web-dev-qa-db-ja.com

アダプターが接続されていません。レイアウトをスキップ

logcatエラー:アダプターが接続されていません。レイアウトをスキップ

GetActivity()でコンテキスト引数を変更しましたが、アプリはまだ実行されていません。

public class FragmentActivity extends Fragment {  
    private RecyclerView mRecyclerView;
    private CountryAdapter mAdapter;
    private LinearLayoutManager layoutManager;
    public FragmentActivity(){}
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.activity_main, container, false);
        mRecyclerView = (RecyclerView) rootView.findViewById(R.id.list);
        layoutManager = new LinearLayoutManager(getActivity());
        mRecyclerView.setLayoutManager(layoutManager);
        mRecyclerView.setAdapter(mAdapter);
        mAdapter = new CountryAdapter(CountryManager.getInstance().getCountries(), R.layout.card_layout, getActivity());
        return rootView;
    }
    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
    }
}
11
kinsell

アダプターを接続しようとした後に作成したため、アダプターを接続しませんでした。

mRecyclerView.setAdapter(mAdapter); // Here, mAdapter is null
mAdapter = new CountryAdapter(CountryManager.getInstance().getCountries(), R.layout.card_layout, getActivity());
15
StenSoft

私の場合、この問題は、リストコンテナを移動するレイアウトにビューがあり、表示が小さすぎたために発生します。

4
anthorlop