Das ist mein Java-Codeandroid Benutzerdefinierte Adapter anhängen ein Element nur
public class profile extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_profile);
String[] web = profile.this.getResources().getStringArray(R.array.nav_drawer_labels);
Integer[] imageId = {
R.drawable.ic_home,
R.drawable.ic_tv,
R.drawable.ic_ticket,
R.drawable.ic_offers,
R.drawable.ic_earning,
R.drawable.ic_usemoney,
R.drawable.ic_ranking,
R.drawable.ic_faq,
R.drawable.ic_symbol21,
};
profile.CustomList adapter1 = new
profile.CustomList(profile.this, web, imageId);
ListView list=(ListView)findViewById(R.id.list);
adapter1.notifyDataSetChanged();
list.setAdapter(adapter1);
}
public class CustomList extends ArrayAdapter<String> {
private final Activity context;
private final String[] web;
private final Integer[] imageId;
public CustomList(Activity context,
String[] web, Integer[] imageId) {
super(context, R.layout.nav_drawer_row, web);
this.context = context;
this.web = web;
this.imageId = imageId;
}
@Override
public int getCount() {
return web.length;
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
LayoutInflater inflater = context.getLayoutInflater();
View rowView= inflater.inflate(R.layout.nav_drawer_row, null, true);
TextView txtTitle = (TextView) rowView.findViewById(R.id.txt);
ImageView imageView = (ImageView) rowView.findViewById(R.id.img);
txtTitle.setText(web[position]);
imageView.setImageResource(imageId[position]);
return rowView;
}
}
}
und diese meine String-Werte
<string-array name="nav_drawer_labels">
<item>@string/title_home</item>
<item>@string/title_videos</item>
<item>@string/title_coupens</item>
<item>@string/title_offers</item>
<item>@string/title_extraearning</item>
<item>@string/title_usemoney</item>
<item>@string/title_ranking</item>
<item>@string/title_faq</item>
<item>@string/title_signout</item>
</string-array>
, wenn ich es laufen seine gib mir nur ein Objekt in Listview
und das ist mein ListView xml
<ListView
android:layout_marginLeft="7dp"
android:layout_marginTop="10dp"
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:divider="@color/dividercolour">
</ListView>
Ich möchte einen benutzerdefinierten Adapter für meine Listenansicht erstellen. so, wenn ich die Tätigkeit seiner Show nur ein Element
haben Sie überprüfen Sie 'web String []' mit 'debbugger'? ob es "Länge" mehr als "1" hat? –
ich mache das String [] web = {"aaaaaa", "aaaaaa", "aaaaaa", "aaaaaa", "aaaaaa", "aaaaaa", "aaaaaa", "aaaaaa", "aaaaaa"}; und das gleiche nur ein Element an die Listenansicht anhängen –
Ändern Sie 'ListView's' layout_height' in 'match_parent'. –