5

Я пытаюсь установить собственный макет Listview в ListFragment, я все время искал его, и я все еще не могу заставить его работать. Я новичок в программировании с Android, поэтому я буду очень благодарен за вашу помощь.Невозможно установить пользовательский список в ListFragment

Это мой listFragment класс

public class ListCins extends ListFragment { 
public static ArrayList<Cin> cins; 
private ListView listView; 
private pListAdapter mAdapter; 

public static ListCins newInstance() { 
ListCins f = new ListCins(); 
return f; 
} 

@Override 
public void onActivityCreated(Bundle savedInstanceState) { 
super.onActivityCreated(savedInstanceState); 
//Los fragments soportan presentar un msj cuando la lista esta vacia. 
setEmptyText("Nothing yet, but working");  

} 


@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 




cins = new ArrayList<Cin>(); 
cins.add(new Cin("Agenter", 1)); 
cins.add(new Cin("Ora", 2)); 
cins.add(new Cin("Vistia", 2)); 
cins.add(new Cin("Bluel", 2)); 


mAdapter = new pListAdapter(this.getActivity(), cins); 
setListAdapter(mAdapter); 


} 



@Override 
public void onViewCreated(View view, Bundle savedInstanceState) { 


super.onViewCreated(view, savedInstanceState);  
setEmptyText("Nothing yet 2, but working"); 
registerForContextMenu(getListView()); 

setHasOptionsMenu(true); 
} 






@Override 
public void onListItemClick(ListView l, View v, int position, long id) { 
super.onListItemClick(l, v, position, id); 

Toast mTosat = Toast.makeText(this.getActivity(),"clicked:"+String.valueOf(position)+" "+cins.get(position).nombre , 200); 
mTosat.show(); 


} 



} 

И это list_fragment.xml я хочу обратиться к listfragment.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 


android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
android:paddingLeft="10dp" 
android:paddingRight="10dp"> 


<ListView 
android:id="@id/android:list" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:layout_weight="1" 
android:drawSelectorOnTop="false" /> 


<TextView 
android:id="@android:id/empty" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:text="No data"  /> 
</LinearLayout> 

У меня также есть собственный arrayAdapter, но я не знаю, если это что-то делать с макетом пользовательских ListView.

Заранее спасибо ...

+1

Извините, но я не понимаю, о чем вы говорите. Вы пробовали себя? С какими конкретными проблемами вы сталкиваетесь? – Aashir

ответ

3

Спасибо NasaGeek, я пытался надуть его так же, как они сказали, как это:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
{ 
View view = inflater.inflate(R.layout.list_fragment, container, false); 
return view; 
} 

но wasen't работает, то я нашел проблему , По какой-то причине этот метод делает код похож на сумасшедшего.

setEmptyText("Nothing yet, but working"); 

Если бы вы могли объяснить мне, почему, это будет потрясающе.

Спасибо.

+0

... findViewById (android.R.id.list) ... –

Смежные вопросы