0

我知道可以将按钮添加到首选项屏幕活动。我读了这个问题 How to add a button to PreferenceScreen 并且效果很好。但是如果我想添加我的自定义标题,我的应用程序就会崩溃。自定义标题在其自己的活动中完美运行,带有按钮的首选项屏幕在其自己的活动中也完美运行。所以我的问题只是基于将这两个功能结合在一起。

这是我在java文件中的代码

public class TestHeadlineActivity extends PreferenceActivity implements OnClickListener{
   /** Called when the activity is first created. */
Button settingsButton;
TextView tv_WindowTitleAccuracy;

    @Override
    public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
       addPreferencesFromResource(R.xml.prefs);
       setContentView(R.layout.main);
       getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);
       settingsButton = (Button) findViewById(R.id.Button_Settings);
       settingsButton.setText("BUTTONTEXT");
   settingsButton.setOnClickListener(this);
   tv_WindowTitleAccuracy = (TextView) findViewById(R.id.tv_WindowTitleAccuracy);
   tv_WindowTitleAccuracy.setText("TEXT");

   }

 @Override
 public void onClick(View v) {

     finish();

       }
      }

这是我的主要 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:orientation="vertical">
<ListView android:id="@android:id/list"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent" android:layout_weight="10"/>
<Button android:text="This is a button on top of all preferences."
          android:layout_height="wrap_content" 
          android:layout_weight="1" android:layout_width="fill_parent"/>
</LinearLayout>

这是我的偏好

 <?xml version="1.0" encoding="utf-8"?>
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">

 <EditTextPreference
    android:title="EditText"
    android:key="name"
    android:summary="Enter your name"
    ></EditTextPreference>

  <CheckBoxPreference 
    android:title="Music"
    android:defaultValue="true"
    android:key="checkbox"
    android:summary="for the splash screen"
     />
  </PreferenceScreen>

多谢你们

4

1 回答 1

0

还是没有答案?!可能你已经解决了,但也许其他人会发现其中一些链接很有用:

干杯

于 2012-08-13T13:46:36.590 回答