我正在以编程方式将单元格添加到表格视图中:
for(int i=0; i<numRows; i++){
TableRow tr=new TableRow(mContext);
tr.setLayoutParams(tableParams);
for(int j=0; j<numCols; j++){
LinearLayout ll = new LinearLayout(mContext);
ll.setOrientation(LinearLayout.VERTICAL);
ll.setGravity(Gravity.CENTER_HORIZONTAL);
ImageView iv = new ImageView(mContext);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(30, 30);
iv.setLayoutParams(layoutParams);
iv.setBackgroundResource(R.drawable.angry_cat);
TextView tv = new TextView(mContext);
tv.setText("some");
tv.setTextSize(7f);
tv.setTextColor(Color.WHITE);
ll.addView(iv);
ll.addView(tv);
tr.addView(ll);
}
table.addView(tr);
}
但文字出现了像素化:
如何定义文本更顺畅?
答案 0 :(得分:0)
我认为您的问题位于此处:tv.setTextSize(7f);
例如,尝试将值更改为14,而不是响应更改的内容。
编辑: 你应该使用7.0f而不是7f
EDIT1: 试试这段代码:
textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, getResources().getDimension(R.dimen.textsize));
create dimen folder like this res/values/dimensions.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="textsize">8sp</dimen>
</resources>
答案 1 :(得分:0)
从Color xml文件更改颜色。 像那样:
color.xml
<color name="white">#ffffff</color>
然后获得颜色:
tv.setTextColor(getResources().getColor(R.color.white));
答案 2 :(得分:0)
试试这个:
tv.setTextAppearance(this,android.R.style.TextAppearance_Small);