0

リスト ビューの下にフッター ボタンを表示しようとすると、アプリケーションがクラッシュするという問題に直面しています。xml コードとアクティビティ コードを添付しました。どんな助けでも大歓迎です。

ContactListActivity.java

  public class ContactListActivity1 extends ListActivity {
    static ArrayList<String> ids = new ArrayList<String>();

     ListView lv;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ContactList1 contactList = this.getContacts();
        ArrayAdapter<Contact1> adapter = new ContactAdapter1(this,
                contactList.getContacts());


          // LoadMore button
            Button btnLoadMore = new Button(this);
            btnLoadMore.setText("Load More");

        View v = getLayoutInflater().inflate(R.layout.contactlistitem,null);

        lv.addFooterView(btnLoadMore);
        lv.setAdapter(adapter);



    }

そして私のXMLコード

    <?xml version="1.0" encoding="utf-8"?>

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"


>

    <TextView
        android:id="@+id/txtDisplayName"
        android:layout_width="250dp"
        android:layout_height="wrap_content"
        android:text="TextView"
        >

</TextView>


     <ImageView

android:id="@+id/contact_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"


/>



   <ListView
    android:id="@+id/contactList1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/txtDisplayName"
    />



</LinearLayout>
4

1 に答える 1

2

はい、あなたは間違いを犯しました -

  • あなたは拡張しているので、コードのListActivityどこにありますか。lv = getListView()

  • または、あなたはあなたのlist = (ListView)findViewById(android.R.id.list);後に与えるべきですsuper.onCreate(savedInstanceState);onCreate

なぜなら、これらを拡張ListActivityすることが重要だからです。あなたのコードでは適切ではないようです。この例をよく見てください。ListView にフッターを追加する方法は? アプリケーションを開始する前に。

于 2012-08-23T04:36:15.263 に答える