分隔数字

时间:2018-08-23 21:28:01

标签: java android

我的程序中有很多文本视图。 我希望这些textview中的数字以3到3分隔。 我应该为任何textview编写代码吗? 有没有一种方法可以编写一次代码并将其用于整个程序? 谢谢。

4 个答案:

答案 0 :(得分:1)

我不是Java开发人员,但是我认为您可以编写一个从textview类继承的类,并重写将文本设置为分隔数字的方法。然后,您只需要用新类替换textview对象的类,这应该很容易。

答案 1 :(得分:1)

这取决于布局的类型。例如,在简单的LinearLayout中,您可以像这样进行操作:

LinearLayout linearLayout = (LinearLayout) findViewById(R.id.mylayout);
for(int k = 0 ; k < n ; k++){
    TextView tView = new TextView(context);
    tView.setText(k*3)
    linearLayout.addView(tView);
}

或者另一种方法是对Views设置文本的所有TextView进行迭代。例如,假设mylayout是父视图:

for(int k=0; k < mylayout.getChildCount(); k++ ){
    if( mylayout.getChildAt(k) instanceof TextView ){
       ((TextView)mylayout.getChildAt(k)).setText(k*3);
    }
}

答案 2 :(得分:1)

为了使用自己的TextView样式,您可以通过扩展TextView类创建一个样式,然后在xml活动中使用它

请参阅示例如何扩展: How to make a custom TextView?

在新TextView的承包商中,可以通过addTextChangedListener方法添加TextWacher以执行数字分隔。

查看示例如何: android on Text Change Listener

答案 3 :(得分:1)

您必须使用DecimalFormat和分组模式