【问题标题】:Inflate list view in a cardview recyclerview在cardview recyclerview中膨胀列表视图
【发布时间】:2018-09-16 23:36:22
【问题描述】:

我有一个 recyclerview 包含一个卡片视图列表(1 个文本视图、1 个要添加的按钮和一个可见性消失的列表)所以一旦用户按下添加按钮,它就会将他带到另一个活动来做一些工作,一旦他保存他应该在选定的卡片列表视图中添加一个项目并且我被卡住了我不知道如何在 onactivityresult 中执行它来为特定卡片的项目充气。

【问题讨论】:

    标签: android listview android-cardview cardview


    【解决方案1】:

    您可以使用 Bundle 将参数发送到活动并返回。 例如, 当用户单击 RecyclerView 中项目中的添加按钮时。 您的适配器知道位置。事实上,您的 onClick 必须在您的适配器中实现。 在 startActvity 之前将该位置作为 putExtra 发送到活动。 然后在完成之前您可以再次执行 putExtra。

    //Your onClick handler in the Adapter class
    Intent intent = new Intent(this, Activity.class);
    intent.putExtra("position", position); //position in adapter
    startActivityForResult(intent, REQ_CODE);
    
    
    
    //in the next activity before finish()
    Intent intent = getIntent();
    itnent.putExtra("position", position);
    finish();
    
    //in your previous activity 
    @Override
        public void onActivityResult(int requestCode, int resultCode, Intent data) {
    
        String pos = data.getStringExtra("position");
        adapter.getItem(Integer.parseInt(pos));
    }
    

    【讨论】:

    • 以及如何将数据添加到已知适配器位置的列表视图中?
    • 所以如果你知道位置,那么你也可以得到它的视图。一旦你有了 View,你就可以得到它的孩子。您可以在该视图上找到ViewById
    • 所以在活动结果上我再次获得适配器位置,我调用列表视图并向其中添加一个项目?但我担心 android 将如何知道他应该膨胀例如第三个 cardview listview
    • 您刚刚传递的位置将完全更新该位置。
    • 你能否给我看一个 onactivity 结果中的代码示例,试图用一个众所周知的位置来膨胀一个列表视图?因为一旦我充气,它就对所有事情都有效
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多