Ich versuche benutzerdefinierte Liste View Adapter zu verwenden, um UI des ListView anzupassen. Aber ich kann keine Textansicht der benutzerdefinierten Listenansicht festlegen. titleView.setText(tem);
in benutzerdefinierten Adapter funktioniert nicht. Es gibt keinen Fehler. Es zeigt eine leere Zeichenfolge in der Textansicht an (die ich dynamisch aus der Adapterklasse einstelle) und zeigt Text korrekt anzeigen an, der in der Elementliste fest codiert ist (zeigt, dass der benutzerdefinierte Adapter korrekt mit dem Fragment verbunden ist). Könnte mir jemand dabei helfen?Einstellung Text von TextView, mit benutzerdefinierten ListView Adapter
Fragment Klasse Anzeige Liste
public class Help_FromFriend_OfferedFragment extends Fragment {
ListView msgList;
ArrayList<post> details;
AdapterView.AdapterContextMenuInfo info;
private String Preference;
public Help_FromFriend_OfferedFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_help__from_friend__offered, container, false);
msgList = (ListView) rootView.findViewById(R.id.listView_post);
details = new ArrayList<post>();
post Detail;
Detail = new post();
Detail.setPost_heading("Heading 1");
Detail.setPost_owner_name("Bob");
details.add(Detail);
Detail = new post();
Detail.setPost_heading("Heading 2");
Detail.setPost_owner_name("Bob 2");
details.add(Detail);
msgList.setAdapter(new postListViewCustomAdaptor(details, getActivity()));
return rootView;
}
}
Fragment Layout
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.Help_FromFriend_OfferedFragment"
tools:showIn="@layout/activity_help__from_friend__offered"
android:background="#999999"
>
<ListView
android:background="#984442"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/listView_post"
android:layout_gravity="left|top" />
</FrameLayout>
kundenspezifische Adapter Klasse
public class postListViewCustomAdaptor extends BaseAdapter {
private ArrayList<post> _data;
Context _c;
postListViewCustomAdaptor (ArrayList<post> data, Context c){
_data = data;
_c = c;
}
public int getCount() {
// TODO Auto-generated method stub
return _data.size();
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return _data.get(position);
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View v = convertView;
if (v == null)
{
LayoutInflater vi = (LayoutInflater)_c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.list_item_post, null);
Log.v("custom Adaptor","v is null ");
}
//ImageView image = (ImageView) v.findViewById(R.id.post_photo);
TextView titleView = (TextView)v.findViewById(R.id.post_title);
TextView ownerNameView = (TextView)v.findViewById(R.id.post_owner_name);
post post_details = _data.get(position);
//image.setImageResource(post_details .getPost_photo());
Log.v("custom Adaptor", "setting postHeading: " + post_details.getPost_heading());
String tem ="faltu";
Log.v("custom Adaptor", "title from View : " + titleView.getText());
titleView.setText(tem);
ownerNameView.setText(post_details .getPost_owner_name());
return v;
}
}
list_item_post.xml (benutzerdefinierte Liste Artikel)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content" android:orientation="horizontal" >
<ImageView
android:id="@+id/post_photo"
android:layout_width="wrap_content"
android:layout_height="40dp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="oo"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#FFFFFF"
android:background="#896322" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/post_title"
android:layout_gravity="center"
android:text="ahaha"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#FFFFFF"
android:background="#003366" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/post_owner_name"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#003366" />
</LinearLayout>
</LinearLayout>
vielen Dank .... dieser dumme Fehler verschwendet meinen halben Tag – Tarun