Ne peut pas résoudre méthode setListAdapter
J'essaie de montrer listView dans le fragment. Mais la méthode setListAdapter - n'est pas résolu.
Je pense, que je dois à obtenir l'id de la listView (android.R.id.liste);
et puis : lv.setAdapter(mAdapter);mais sa il ne faut pas travailler trop.
public class MyEmployeeFragment extends Fragment {
private CustomAdapter sAdapter;
private List<User> userList;
ProgressDialog mProgressDialog;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
setHasOptionsMenu(true);
userList = new ArrayList<User>();
sAdapter = new CustomAdapter(getActivity(),userList);
setListAdapter(sAdapter);
new CustomAsync().execute();
}
private class CustomAdapter extends ArrayAdapter<User> {
private LayoutInflater inflater;
public CustomAdapter(Context context, List<User> objects) {
super(context, 0, objects);
inflater = LayoutInflater.from(context);
}
class ViewHolder {
TextView id;
TextView name;
TextView lastName;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder vH;
if (convertView == null) {
convertView = inflater.inflate(R.layout.list_item_employee, null);
vH = new ViewHolder();
vH.id = (TextView) convertView.findViewById(R.id.tv_employee_id);
vH.name = (TextView) convertView.findViewById(R.id.tv_employee_name);
vH.lastName = (TextView) convertView.findViewById(R.id.tv_employee_last_name);
convertView.setTag(vH);
} else
vH = (ViewHolder) convertView.getTag();
final User user = getItem(position);
vH.id.setText(user.getId());
vH.name.setText(user.getName());
vH.lastName.setText(user.getLastName());
return convertView;
}
}
private class CustomAsync extends AsyncTask<Void,Void,List<User>>
{}
}
XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<ListView
android:id="@android:id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:divider="#B7B7B7"
/>
<ProgressBar
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/progressBar2"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
<TextView
android:id="@id/android:empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/empty"
android:layout_above="@+id/progressBar2"
android:layout_alignRight="@+id/progressBar2"
android:layout_alignEnd="@+id/progressBar2"
android:layout_marginBottom="83dp">
</TextView>
</RelativeLayout>
- votre asynctask ne notant
- Ses juste pour stackOverflow. En application asynchrone code est excist
- vous pouvez faire comme suggéré dans mon post si vous voulez fragment
Vous devez vous connecter pour publier un commentaire.
setListAdapter
est une méthode deListFragment
pendant que votre fragment s'étendFragment
.http://developer.android.com/reference/android/app/ListFragment.html#setListAdapter(android.widget.ListAdapter)
Donc soit vous l'étendre
ListFragment
ou
Étendre
Fragment
gonfler une mise en page avecListView
, initialiserListView
dansonCreateView
deFragment
et ensuite utiliserlistView.setAdapter(adapter)
.Dans le cas où vous souhaitez étendre Fragment
Puis
setListAdapter()
est une méthodeListFragment
..Pour cela, vous devez étendreListFragmnet
au lieu deFragment
.Modifier cette ligne
en
ListFragment
encore. MaisFragmentTransaction
ne fonctionnent pas. Je veux utiliserFragment
Vous devez définir la liste de la première:
Et, plus tard, vous avez besoin de mettre la carte:
Ou modifier
à