扩展PreferenceActivity中的“创建”按钮

时间:2015-07-02 09:26:17

标签: android button preferenceactivity

我正在创建一个可以制作并删除标签的应用。 我想创建两个按钮,您可以创建一个选项卡并删除一个选项卡。 我希望按钮与设置所在的活动相同,但似乎不起作用。

这是我的AppPreferences:

public class AppPreferences extends PreferenceActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    addPreferencesFromResource(R.xml.preferences);

}
public void createtab(View view){

    Toast.makeText(AppPreferences.this, "Button 1", Toast.LENGTH_SHORT).show();

}
public void removetab(View view){

    Toast.makeText(AppPreferences.this, "Button 2", Toast.LENGTH_SHORT).show();

}

这是我的布局:

<Button
    style="?android:attr/buttonStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Create Tab"
    android:id="@+id/createtab"
    android:onClick="createtab"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    />

<Button
    style="?android:attr/buttonStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Remove Tab"
    android:id="@+id/removetab"
    android:onClick="removetab"
    android:layout_alignBottom="@+id/createtab"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    />

感谢阅读,希望你能帮助我!

1 个答案:

答案 0 :(得分:0)

根据How to add a button to a PreferenceScreen (Android), 你可以这样做:

<PreferenceScreen android:title="@string/login" android:key="Login">
    <EditTextPreference android:persistent="true" android:title="@string/username" android:key="Username"></EditTextPreference>
    <EditTextPreference android:title="@string/password" android:persistent="true" android:password="true" android:key="Password"></EditTextPreference>
    <Preference android:layout="@layout/loginButtons" android:key="loginButtons"></Preference>

并且布局文件(layoutButtons.xml)看起来就是这样:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:weightSum="10" 
    android:baselineAligned="false" android:orientation="horizontal">
    <Button android:text="Login" android:layout_width="fill_parent"
        android:layout_weight="5" android:layout_height="wrap_content"
        android:id="@+id/loginButton" android:layout_gravity="left"></Button>
    <Button android:text="Password?" android:layout_width="fill_parent"
        android:layout_weight="5" android:layout_height="wrap_content"
        android:id="@+id/forgottenPasswordButton"></Button>
</LinearLayout>

你可以添加OnClick ..