2013-05-29 3 views
1

단추 표시 정보에 XML 코드를 사용하는 단추를 추가하려고 시도하는 중 오류가 발생했습니다. 나는 하나의 버튼을 만들고, 그것을 바닥 글에 추가하고, id를 내 R 파일에있는 ok_button ID의 ID로 설정함으로써이 문제를 극복했습니다.스크롤하는 PreferenceScreen의 하단에 특정 단추 추가

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); 
    } 
} 

이것은 작동합니다!

답변

1

다음과 같은 단계를 참조 할 수 있습니다 : -

  1. 은 ListView에 포함 된 XML 레이아웃을 생성하고 하단에 추가 할 버튼 (당신이 그것을 가지고 있어야합니다).

  2. addPreferencesFromResource (R.xml.settings) 메소드 다음에 setContentView (R.layout.your_layout) 메소드를 사용하여 레이아웃을 추가하십시오. 평소의 방법대로

3.You는 버튼에 액세스 할 수 있습니다.

업데이트 : -

귀하의 레이아웃 코드는 다음과 같이해야한다, 목록보기는 ID @android이 있어야합니다

<?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> 

: ID/목록. 필요한 경우 RelativeLayout을 사용할 수 있습니다.

+0

내 대답에 감사드립니다. 내 업데이트를 확인해 주시겠습니까? 내가 잘못했을 수도 있지만 구현을 시도하고 같은 오류가 발생했습니다. – zgc7009

+0

LinearLayout에서 ListView로 변경하고 addPreferencesFromResource (R.xml.settings) 바로 뒤에 내용보기를 설정합니다. 아직도 운이 없다. – zgc7009

+0

업데이트 된 답변 확인, 단추를 ListView의 자식으로 추가하면 안됩니다. –