1

通过尝试添加一个使用 xml 代码来显示按钮显示信息的按钮,我在使用此方法时遇到了错误。我通过创建一个按钮,将其添加到页脚,并将 id 设置为我的 R 文件中的 ok_button ID 来解决这个问题。

public class Prefs extends PreferenceActivity {
    @SuppressWarnings("deprecation")
    @Override
    protected void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.settings);
        this.setContentView(R.layout.buttons);

        /* Add Button to the Bottom of List */
        Button button = new Button(this);
        button.setText("OK");
        button.setId(R.id.ok_button);
        ListView v = getListView();
        v.addFooterView(button);
    }
}

这行得通!

4

1 回答 1

1

您可以参考以下步骤:-

  1. 创建一个 XML 布局,其中包含一个 ListView(您必须拥有它)和您要在底部添加的按钮。

  2. 在 addPreferencesFromResource(R.xml.settings) 方法之后使用 setContentView(R.layout.your_layout) 方法添加布局。

3.您可以像往常一样访问按钮。

更新:-

你的布局代码应该是这样的,

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        android:background="#00000000">
    </ListView>
<Button
    android:id="@+id/ok_button"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="OK" />
</LinearLayout>

ListView 必须具有 id @android:id/list。如果需要,您可以使用 RelativeLayout。

于 2013-05-29T16:05:46.213 回答