1

私は私のアンドロイドリストビューで本当に奇妙な問題を抱えています. リストビューはフラグメント内にあり、すべてがコンパイルされており、nullpointer エラーは発生しなくなりましたが、リストビューは空に見えます。空のように見えますが、ログにはリストビューに 385 個のオブジェクトがあることが示されています。なぜ空っぽなのかわかりません。青いフラグメントが表示され、リストビューにデータが取り込まれます。何か案は?

アダプターの設定方法:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.tabs_layout);
    initialiseTabHost(savedInstanceState);
    if (savedInstanceState != null) {
        mTabHost.setCurrentTabByTag(savedInstanceState.getString("tab")); //set the tab as per the saved state
    }

    ActivePackages = getList();
    LayoutInflater inflater = (LayoutInflater)   this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);        
    LinearLayout mContainer = (LinearLayout) inflater.inflate(R.layout.tab_frag1_layout, null);
    ListView activeList = (ListView) mContainer.findViewById(R.id.activelist);
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, ActivePackages);
    Log.i("valueof activeList",String.valueOf(activeList.getCount())); //returns 0 
    activeList.setAdapter(adapter);
    adapter.notifyDataSetChanged();
    Log.i("valueof activeList",String.valueOf(activeList.getCount())); //returns 385. 
}

これはフラグメントの xml です。

<?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="@+id/activelist"
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        android:background="#0073fd">    
    </ListView>

</LinearLayout>
4

1 に答える 1

1

Activity でsetContentView(R.layout.tabs_layout);tabs_layout を設定した後、レイアウトR.layout.tab_frag1_layoutをインフレートしましたが、追加しLinearLayout mContainerていません。mContainertabs_layout

mContainerタブレイアウトで設定してみてください。

于 2012-09-10T17:23:53.460 に答える