使用自定义窗口标题向“活动”添加“首选项”屏幕

时间:2011-10-16 14:02:54

标签: android android-layout android-preferences android-xml android-custom-view

我知道可以在偏好的Screeen活动中添加一个按钮。我读了这个问题      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>

谢谢你们

1 个答案:

答案 0 :(得分:0)

仍然没有答案?!可能你已经解决了,但也许其他人会发现这些链接有用:

欢呼