gpt4 book ai didi

java - 如何从列表适配器刷新布局/上下文(我认为这就是我需要的)

转载 作者:行者123 更新时间:2023-12-02 03:25:26 26 4
gpt4 key购买 nike

我遇到了一个错误,我无法理解其原因以及如何解决它。我相信这是布局/ View /上下文刷新的问题,但我不知道。

我有一个来自 listView 的单元格(我更喜欢 recyclerView 但该项目已经有很多年了),在单元格的角落里我有一个按钮来显示更多选项。以编程方式,它只是创建一个元素 View.GONE 和另一个元素 View.VISIBLE。

我稍后会附上代码

对于这个按钮,我也设置了一个监听器,当我点击它时,它会执行与下面提到的相反的操作。它显示一些元素并隐藏单元格中的整个 LinearLayout。元素已显示,但 LinearLayout 仍保留在屏幕上,就像有问题一样。如果我点击任何地方它就会消失,如果我尝试点击它它也会消失。就像那条直线的 View 被窃听并像幽灵一样保留在那里。我会购买一些图片。

单元格通常位于开头:/image/KCmDu.jpg

我按下整个 View 以在单元格底部显示 LinearLayout 后的单元格:/image/7wcKk.jpg

我按下角的箭头隐藏 LinearLayout 后的单元格。这里显示了被窃听的 View /image/KziDQ.jpg

我点击其他任何地方后的单元格 /image/Hejfb.jpg

public void expandView(View view){
final View cellView = view;
final LinearLayout editLinear = (LinearLayout) view.findViewById(R.id.cart_edit);
editLinear.setVisibility(View.VISIBLE);

final TextViewFont countText = (TextViewFont) view.findViewById(R.id.itemCount);
countText.setVisibility(View.GONE);
final TextViewFont total = (TextViewFont) view.findViewById(R.id.itemTotal);

final ImageView imageViewArrow = (ImageView) view.findViewById(R.id.cart_edit_image);
imageViewArrow.setImageDrawable(context.getResources().getDrawable(R.drawable.icon_arrow_up));
//notifyDataSetChanged();
imageViewArrow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
countText.setVisibility(View.VISIBLE);
editLinear.setVisibility(View.GONE);
imageViewArrow.setImageDrawable(context.getResources().getDrawable(R.drawable.icon_arrow_down));

}
});

最佳答案

首先,您不需要存储上下文,因为在 View 中您有 view.getContext() 方法。我推荐这篇文章: https://possiblemobile.com/2013/06/context/

另一方面,请确保您没有与 ImageView 重叠的重影 View 。

关于java - 如何从列表适配器刷新布局/上下文(我认为这就是我需要的),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56908783/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com