【发布时间】:2019-01-30 08:18:52
【问题描述】:
我的程序中有很多文本视图。 我希望这些文本视图中的数字由 3 到 3 分隔。 我应该为任何文本视图编写代码吗? 有没有办法编写一次代码并将其用于整个程序? 谢谢。
【问题讨论】:
我的程序中有很多文本视图。 我希望这些文本视图中的数字由 3 到 3 分隔。 我应该为任何文本视图编写代码吗? 有没有办法编写一次代码并将其用于整个程序? 谢谢。
【问题讨论】:
我不是 Java 开发人员,但我认为您可以编写一个继承自 textview 类的类,并重写设置文本以分隔数字的方法。然后你只需要用你的新类替换你的 textview 对象的类,这应该很容易。
【讨论】:
这取决于布局的类型。例如,在一个简单的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);
}
}
【讨论】:
为了使用你自己的TextView风格,你可以通过扩展TextView类创建一个,然后在xml活动中使用它
查看示例如何扩展: How to make a custom TextView?
在你新建的TextView的构造器中,你可以通过addTextChangedListener方法添加TextWacher来执行你的号码分离。
【讨论】:
你必须使用DecimalFormat 和分组模式
【讨论】: