尝试在android中更改gridview中的字体大小
我正在尝试在android应用程序中更改gridview的字体大小 这是我制作gridview的代码:尝试在android中更改gridview中的字体大小,android,gridview,styles,font-size,Android,Gridview,Styles,Font Size,我正在尝试在android应用程序中更改gridview的字体大小 这是我制作gridview的代码: GridView gridview = (GridView)findViewById(R.id.gridView); ArrayAdapter<String> arrayadapter = new ArrayAdapter<String>( this, R.layout.customstyl
GridView gridview = (GridView)findViewById(R.id.gridView);
ArrayAdapter<String> arrayadapter = new ArrayAdapter<String>(
this,
R.layout.customstyle,
Rows );
gridview.setNumColumns(14);
gridview.setAdapter(arrayadapter);
GridView GridView=(GridView)findviewbyd(R.id.GridView);
ArrayAdapter ArrayAdapter=新的ArrayAdapter(
这
R.layout.customstyle,
行);
gridview.setNumColumns(14);
setAdapter(arrayadapter);
下面是我的custom style.xml文档中的代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/grid_item_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="8dip" >
</TextView>
</LinearLayout>
当我试图让程序应用我的stlye时,程序当前崩溃,但当它使用标准样式时,它工作正常。
有人能帮我修改这个样式,这样我就可以设置字体大小了吗
谢谢您可以创建自己的自定义适配器,如下所示:
public class MyAdapter extends BaseAdapter{
private Context mContext;
private String[] text = {};
private Integer[] mThumbIds = {};
public MyAdapter(Context c,String[] text)
{
mContext = c;
this.text = text;
}
public int getCount()
{
return mThumbIds.length;
}
public Object getItem(int position)
{
return position;
}
public long getItemId(int position)
{
return position;
}
public View getView(int position, View convertView, ViewGroup parent)
{
View myView = convertView;
if (convertView == null)
{
LayoutInflater li = (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
myView =li.inflate(R.layout.grid_item, null);
TextView tv = (TextView)myView.findViewById(R.id.grid_itemTxt);
tv.setText(text[position]);
}
return myView;
}
网格项目布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id = "@+id/gridItem"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation= "vertical"
android:gravity="center_horizontal" >
<TextView
android:id="@+id/grid_itemTxt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:textColor="#6075B2">
</TextView>
</LinearLayout>
注意:
MyAdapter
是一个java类,它扩展了BaseAdatape
ArrayAdapter
应该具有TextView
类型的资源id
删除父级LinearLayout
,您的布局应该如下
像这样使用
customStyle.xml
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/grid_item_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="8sp" >
</TextView>
用上述解决问题的方法替换自定义布局。Post logcat trace。。您应该使用
sp
而不是dp
来处理TextView
它说:您必须为TextView发布的答案提供一个资源ID,如果您想在网格上设置Images+TextView,请检查已修复它的oncethaks:)。。让我知道,我会编辑我的答案
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/grid_item_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="8sp" >
</TextView>