我有这种情况
<dimen name="fld_label_size">22sp</dimen>
<dimen name="fld_stat_size">12sp</dimen>
<dimen name="question_fld_label_size_text">24sp</dimen>
在我的维度文件
中然后在活动中
lblEnd.setTextSize(TypedValue.COMPLEX_UNIT_PX, getResources().getDimension(R.dimen.question_fld_label_size_text));
在表格布局中的其他活动
TableRow.LayoutParams lp1 = new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT,TableRow.LayoutParams.WRAP_CONTENT, 0.2f);
TextView tv1 = new TextView(this);
tv1.setText(percent);
tv1.setTextColor(Color.BLACK);
tv1.setLayoutParams(lp1);
tv1.setTextSize(TypedValue.COMPLEX_UNIT_PX, getResources().getDimension(R.dimen.fld_stat_size));
第一个你看得对,第二个是如此之小,以至于字符甚至不能区分
我做错了什么?修改
我尝试将代码放在LinearLayout而不是表中。结果是不同的。我按预期看到了textView
RelativeLayout rl = (RelativeLayout) findViewById(R.id.survey);
TextView tv0 = new TextView(this);
tv0.setTextSize(TypedValue.COMPLEX_UNIT_SP, getResources().getDimension(R.dimen.fld_stat_size));
tv0.setText(c.getString(0));
tv0.setId(Resources.getSystem().getIdentifier("txtView_"+c.getString(5),null,null));
tv0.setTextColor(Color.BLACK);
tv0.setPadding(0,150,0,0);
rl.addView(tv0);
答案 0 :(得分:0)
从您的代码中可以清楚地看到,您正在使用&#34; fld_label_size&#34;在第一次活动中是22sp。第二,你正在使用&#34; fld_stat_size&#34;,即12sp。建议使用至少14sp来使文本区分和清晰。