我已经创建了一个库,现在我想在代码中更改它。画廊的元素由两个Textviews
组成,我想得到行数。
我试过了:
TextView top = (TextView)findViewById(R.id.top);
top.getLineCount();
但该应用程序在top.getLineCount();
崩溃了有没有人有想法?
CustomAdapter的GetView
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater iteminflater = LayoutInflater.from(mContext);
View gallaryitem = iteminflater.inflate(R.layout.gallery_item, null);
ImageView imgView= (ImageView ) gallaryitem .findViewById(R.id.item);
imgView.setImageResource(mImageIds[position]);
//TextView top = (TextView)convertView.findViewById(R.id.top);
//top.getLineCount();
return gallaryitem ;
}
LayoutFile
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10px" >
<ImageView
android:id="@+id/item"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:src="@drawable/icon"
android:gravity="center"
android:background="#4E4E4E"/>
<TextView
android:id="@+id/bottom"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="moremore"
android:textSize="27sp"
android:layout_marginTop="275dip"
android:paddingTop="35dip"
android:textColor="#eeeeee"
android:background="#60000000"
android:textStyle="bold"
android:typeface="sans"/>
<TextView
android:id="@+id/top"
android:layout_width="fill_parent"
android:text="testtesttesttesttesttesttest"
android:textSize="22sp"
android:layout_marginTop="280dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:textColor="#eeeeee"
android:background="#60ff0000"
android:textStyle="bold"
android:typeface="sans"
android:layout_height="wrap_content"/>
</RelativeLayout>
答案 0 :(得分:0)
您应该制作一个自定义适配器来修改图库的子项。
class MyAdapter extends ArrayAdapter<E>{
public MyAdapter(Context context, int textViewResourceId, E[] objects) {
super(context, textViewResourceId, objects);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if( convertView== null ) convertView = getLayoutInflater().inflate(R.layout.your_layout, null);
//Modify contents of your gallery here.. example:
TextView top = (TextView)convertView.findViewById(R.id.top);
top.getLineCount();
return convertView;
}
}
按照设置普通适配器的方式在画廊中设置它:
myGallery.setAdapter(new MyAdapter(...));