Eu criei um arquivo xml como este:
<?xml version="1.0" encoding="utf-8"?>
<ListView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/list" >
</ListView>
e uma atividade:
public class ExampleActivity extends ListActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mainlist);
}
}
Como você vê, eu não fiz mais nada. Mas estou recebendo o erro:
Seu conteúdo deve ter um ListView cujo atributo de ID seja 'android.R.id.list'
Mesmo que eu tenha a android:id="@+id/list"
linha no meu xml.
Qual é o problema?
android
android-listview
Isa Kuru
fonte
fonte
@android
, o Eclipse dizlist cannot be resolved or is not a field
Você deve ter uma lista de exibição em seu
mainlist.xml
arquivo com o ID como@android:id/list
fonte
isso deve resolver seu problema
fonte
Da maneira exata que eu corrigi isso com base nos comentários acima, pois não consegui fazê-lo funcionar no início:
activity_main.xml:
MainActivity.java:
preferências.xml:
fonte
Herdar classe de atividade em vez de ListActivity, você pode resolver esse problema.
fonte
fonte
Outra coisa que me afetou: se você possui vários dispositivos de teste, verifique se está fazendo alterações no layout usado pelo dispositivo. No meu caso, passei um tempo fazendo alterações em xmls no diretório "layout" até descobrir que meu telefone maior (que eu mudei para o meio do teste) estava usando xmls no diretório "layout-sw360dp". Grrr!
fonte