从适配器

时间:2016-10-12 15:56:00

标签: java android android-studio-2.2

我们的应用程序改编自github上的Openkeychain应用程序。在我们的应用程序中,我们有一个Main活动,其中包含一个片段,该片段还包含由游标适配器填充的列表视图,显示用户导入的pgp密钥。当您点击列表视图项(键)时,用户将被带到另一个根据所选项目填充的活动,显示与其关联的密钥和指纹的更多详细信息。该应用程序还有另一个活动,您可以在其中搜索并将键添加到主活动片段适配器中。我想要的是当我们搜索并将密钥添加到适配器时,应用程序应该将用户直接带到第三个活动,该活动由主活动适配器填充,从而消除了用户转到主要活动的需要,点击最近增加了关键。

是否有功能可以获取适配器中最近添加的项目?我目前在密钥搜索活动中使用以下代码,它在导入密钥后立即启动:

Intent viewIntent = new Intent(getBaseContext(), ViewKeyActivity.class);
viewIntent.setData(
                    KeychainContract.KeyRings.buildGenericKeyRingUri(KeyListFragment.mAdapter.getMasterKeyId(KeyListFragment.mAdapter.getCount() - 1)));
            startActivity(viewIntent);

但问题是我收到空指针错误,因为当用户导航回主活动时,适配器似乎只响应上面的代码。 我已经尝试KeyListFragment.mAdapter.notifyDataSetChanged();了 另外值得一提的是,这里使用的意图用于listview的项目点击监听器的主要活动:

Intent viewIntent = new Intent(getActivity(), ViewKeyActivity.class);


        viewIntent.setData(
            KeyRings.buildGenericKeyRingUri(mAdapter.getMasterKeyId(position)));

1 个答案:

答案 0 :(得分:0)

mManager = new LinearLayoutManager(this);
        //mManager.setReverseLayout(true);
        //mManager.setStackFromEnd(true);
        recyclerView.setLayoutManager(mManager);