2013-08-26 5 views
2

아래 코드를 사용하여 첫 번째 목록을 표시하는 앱이 있습니다. 아래 코드에서 임의의 목록 항목을 클릭하면 더 많은 목록에 어떻게 표시합니까? 예제 코드로 도와주세요.내 앱에 두 개의 listfragment를 추가하는 방법

public class MyListFragment1 extends ListFragment { 

    String[] VideoSetup ={ 
      "Properties", 
      "Color Control", 
      "Tint", 
      "3D Depth", 
      "3D Format", 
      "Dynamic Backlight", 
      "Mode", 
      "Cache ID", 

    }; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     ListAdapter myListAdapter = new ArrayAdapter<String>(
       getActivity(), 
       android.R.layout.simple_list_item_1, 
       VideoSetup); 
     setListAdapter(myListAdapter); 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
      Bundle savedInstanceState) { 
     return inflater.inflate(R.layout.listfragment1, container, false); 
    } 

    @Override 
    public void onListItemClick(ListView l, View v, int position, long id) { 
     // TODO Auto-generated method stub 
     Toast.makeText(
       getActivity(), 
       getListView().getItemAtPosition(position).toString(), 
       Toast.LENGTH_LONG).show(); 
     Fragment2 frag = (Fragment2) getFragmentManager().findFragmentById(R.id.fragment2); 
    } 




} 

저는이 작업을 실제로 수행 할 수 없습니다. 나는 안드로이드에 아주 새로운 사람이다.

+0

ActionBarSherlock을 사용할 수 있습니다. –

답변

0

먼저 두 번째 ListFragment를 작성해야합니다. 비슷하게. - /res/layout/activity_main.xml이 당신의 조각 컨테이너가

Fragment2 frag = (Fragment2) getFragmentManager().findFragmentById(R.id.fragment2); 

activity.getFragmentManager() 
        .beginTransaction() 
        .replace(R.id.fragment_container, frag) 
        .addToBackStack(null) 
        .commit(); 

입니다 :

그런 다음, 첫 번째 조각의 onListItemClick() 메서드는 다음처럼 작성할 수 있습니다. 그것은 비어 있습니다. 된 setContentView (R.layout.activity_main)에 의해 MainActivity.class으로 바인딩 : 위의 설명처럼 조각 컨테이너에 새로운 첫번째 조각을 추가 할 필요가 그 후

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       xmlns:tools="http://schemas.android.com/tools" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       tools:context=".MainActivity" 
       android:background="#000000" 
       android:id="@+id/fragment_container"> 
</RelativeLayout> 

합니다.

그런 다음 첫 번째 조각의 onListItemClick (...) 메소드에서 새로운 두 번째 조각을 만들고 먼저 바꾸어야합니다.

+0

위의 코드는 내가하고 싶은 것을 수행합니다. 이제는 어리석은 추측을합니다. 이것도 도와주세요. 목록이있는 다른 조각이 있습니다. 기본적으로 활동을 시작하면 해당 목록이 표시됩니다. 첫 번째 조각의 목록 항목을 클릭하면 두 번째 조각에 목록을 표시하고 싶었습니다. – SajidKhan

관련 문제