2012-02-04 2 views
0

Tab 작업을 사용하고 있습니다. 탭 하위 중 하나에서 목록 활동을 사용했습니다. "new"를 사용하여 Activity 내에서 listview를 선언하면 올바르게 작동합니다. 하지만 .xml 파일에서 선언 한 listview를 사용하면 응용 프로그램 강제 종료 오류가 표시됩니다.Android : TabgroupActivity에서 사용하는 동안 XML 목록보기에 오류가 표시됨

TabActivity, 우리는 목록보기 팽창하면서, listview이 ...... 당신이 부모의 활동 상황을 필요로 탭 구현을위한 ActivityGroup Implemanetation를 따르고 있습니다 가정

+0

시도 게시 로그 캣 너무 – Shruti

+0

안녕, 오류 보고서가 여기에 은 참조를 위해 몇 가지 코드입니다 : 02-04 10 : 34 : 05.915 : E/AndroidRuntime (541) : java.lang.RuntimeException : 활동을 시작할 수 없습니다. ComponentInfo {com.Ripple/com.Ripple.FriendsListActivity} : java.lang.IllegalStateException : 지정된 자식에 이미 부모님. 먼저 부모의 부모에 대해 removeView()를 호출해야합니다. 발생 원인 : java.lang.IllegalStateException : 지정된 자식에 이미 부모가 있습니다. 먼저 부모의 부모에 대해 removeView()를 호출해야합니다. –

+0

나는 그렇지 않으면 코드를 게시하시기 바랍니다 사용하는 어댑터를 취소해야한다고 생각합니다. – Newts

답변

0

를 지정하십시오되는 모든 규칙을 의미 사용해야합니다 xml에서 현재 Activity의 Context를 가져 오므로이 오류가 발생합니다.

+0

안녕하세요, 예 활동 그룹 구현을 따르고 있습니다 ... 오류가 발생하는 것은 02-04 10 : 34 : 05.915 : E/AndroidRuntime (541) : java.lang.RuntimeException : 활동을 시작할 수 없습니다. ComponentInfo {com.Ripple/com .Ripple.FriendsListActivity} : java.lang.IllegalStateException : 지정된 자식에 이미 부모가 있습니다. 먼저 부모의 부모에 대해 removeView()를 호출해야합니다. 발생 원인 : java.lang.IllegalStateException : 지정된 자식에 이미 부모가 있습니다. 먼저 부모의 부모에 대해 removeView()를 호출해야합니다. –

+0

someLayout.addView (listVIew)를 호출하고 있습니까? 방법. – jeet

+0

아니, 나는 그 방법을 부르지 않았다. –

0

그런 경우 ListView를 채우는 별도의 활동을 만드는 것이 좋습니다. 내 말은 ListActivity를 확장 한 Activity를 만들고 ListView 관련 작업을 수행하는 것입니다. 그런 다음 인 텐트를 만들고이 확장 된 ListActivity를 TabHost의 자식으로 추가하십시오. this blog post에서는 간단한 활동을 탭 호스트의 하위 항목으로 추가하는 방법을 설명했습니다. 블로그 게시물에 설명 된대로 활동을 확장하는 대신 목록 활동을 확장 해보십시오. 블로그 게시물이나이 답변에 의심의 여지가 있는지 물어보십시오.

ListActivity 확장 방법에 대한 전체 리소스는 here입니다.

public class TestlistActivity extends ListActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     final String [] str = {"ONE","TWO","THREE"}; 
     ArrayAdapter<Object> adapt = new ArrayAdapter<Object>(getApplicationContext(), android.R.layout.simple_list_item_1, str); 
     setListAdapter(adapt); 
    } 
} 

는 XML에리스트 뷰를 추가하고 ID가 @android해야한다 : ID/목록

<?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="match_parent" 
     android:layout_height="wrap_content" > 
    </ListView> 
</LinearLayout> 
관련 문제