通过用户选择增加和减少 android 应用程序的字体大小

Posted

技术标签:

【中文标题】通过用户选择增加和减少 android 应用程序的字体大小【英文标题】:Increasing and Decreasing the font sizes of the android application by user selection 【发布时间】:2015-08-01 04:07:09 【问题描述】:

实际上我想通过用户选择在我的应用程序中指定自定义文本大小。下面是一个展示想法/主题的图

所以,为此我有一个想法来实现这一点。

我将在视图中创建一个对话框,其中包含用户输入选项来增加/减少字体大小。更改字体大小后,我将其应用于应用程序。 (+) & (-) 符号也可以改变字体大小和搜索栏。

我的问题是构建 android 类/库中是否有任何特定的字体样式/大小更改/任何其他想法可用?

任何帮助将不胜感激。意思是我会带着我尝试的东西来。谢谢你

【问题讨论】:

【参考方案1】:

你可以检查

btnTextDeSave.setOnClickListener(onClickEven);
btnTextInSave.setOnClickListener(onClickEven);

public OnClickListener onClickEven = new OnClickListener() 

    @Override
    public void onClick(View v) 
        // TODO Auto-generated method stub
        switch (v.getId()) 
            break;
        case R.id.btTextDeSave:
            txtDescriptionSave.setTextSize(TypedValue.COMPLEX_UNIT_PX, (txtDescriptionSave.getTextSize() - 2f));
            break;
        case R.id.btTextInSave:
            txtDescriptionSave.setTextSize(TypedValue.COMPLEX_UNIT_PX, (txtDescriptionSave.getTextSize() + 2f));
            break;

        default:
            break;
        

    
;

【讨论】:

【参考方案2】:

要增加textView 的大小,您可以使用

_percentField.setTextSize(values[0]*2);

其中values 是一个数组。

要减少你可以试试

 _percentField.setTextSize(values[0]/2);

【讨论】:

【参考方案3】:

你可以试试这个-

    textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, <font-size value in integer> );

    // to update your changes
    textView.invalidate();

【讨论】:

【参考方案4】:

这样做

float fs = prefs.getFloat("fontsize", 12);
seekbar.setProgress((int)fs);
layout.setTextSize(TypedValue.COMPLEX_UNIT_PX,seekbar.getProgress());

别忘了 onProgressChanged:

layout.setTextSize(TypedValue.COMPLEX_UNIT_PX,progress);

【讨论】:

【参考方案5】:

您可以通过以下方式简单地做到这一点:

//Adjust values with whatever your need is
int SIZE_LARGE = 24; 
int SIZE_SMALL= 16;

btnLargeText.setOnClickListener(new OnClickListener() 
    
    @Override
    public void onClick(View arg0) 
        textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, LARGE_SIZE);
    
);

btnSmallText.setOnClickListener(new OnClickListener() 
    
    @Override
    public void onClick(View arg0) 
        textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, SIZE_SMALL);
    
);

【讨论】:

以上是关于通过用户选择增加和减少 android 应用程序的字体大小的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Android 中以编程方式增加和减少音量

在Android设备的联系人>设置中获取排序顺序偏好选择的用户以及如何减少查询时间?

Confluence 6 增加和减少你许可证的用户数

如何在android中增加和减少手电筒亮度

Android - 无法从列表项中增加或减少值

Android-----购物车(包含侧滑删除,商品筛选,商品增加和减少,价格计算,店铺分类等)