gpt4 book ai didi

java - Android 中单击按钮后如何从 GridView 中删除按钮?

转载 作者:行者123 更新时间:2023-12-02 07:42:11 24 4
gpt4 key购买 nike

我在 GridView 中添加了按钮,该按钮以编程方式添加,按钮的数量取决于单词长度,每个按钮都有一个单词字符,并在单击时隐藏该按钮,但我想在单击它时将其删除。

这是代码

SpellAdapter.java

public class SpellAdapter extends BaseAdapter{


public Context context;
public char[] word;
public String spellWord1;
public SpellAdapter(Context context, char[] word, String orglWord)
{
this.context=context;
this.word=word;
spellWord1 = orglWord;
}

public int getCount() {
count=word.length;
return count;
}

public Object getItem(int position) {

return null;
}

public long getItemId(int position) {

return 0;
}


public View getView(final int position, View convertView, ViewGroup arg2) {

View v = convertView;
if (v == null)
{
LayoutInflater vi = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.buttonlist, null);
}

final Button btn= (Button)v.findViewById(R.id.letterbtn);

btn.setText(word[position]+"");

btn.setOnClickListener(new OnClickListener(){

public void onClick(View v)
{
letters=btn.getText();
String word = letters.toString();
btn.setVisibility(View.GONE); // Here invisible the button.

}


});

return v;
}
}

最佳答案

不要提供与words.length一样多的按钮。使用不同的数据结构,比方说一个 boolean 数组,它将保存每个按钮是否已被单击一次(开始时均为 false)。

然后,当单击按钮时,切换 boolean 值。

在实现适配器的 getCount 方法时,循环遍历数组并对指示仍需要显示按钮的任何标志进行计数。

Getview 会稍微复杂一些:您将收到一个索引,它将是数组中“false”的数量。因此,数一下它们并显示正确的按钮。

关于java - Android 中单击按钮后如何从 GridView 中删除按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11445274/

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