私はListView
を使用しました。各アイテムにはTextView
とImageView
の2つがあります。ユーザーがリストアイテムをクリックした場合にのみ、2番目のTextView
を表示したいだけです。リストビューのリストアイテムを非表示にすると、正しく表示されない
abc.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
MyAdapter.ViewHolder holder= (MyAdapter.ViewHolder) view.getTag();
if (holder.txtSecond.getVisibility() == View.VISIBLE) {
holder.txtSecond.setVisibility(View.GONE);
holder.image.setRotation(0);
} else {
holder.txtSecond.setVisibility(View.VISIBLE);
holder.image.setRotation(180);
}
}
});
私のコード、そしてgetView
機能は、次のようになります。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = activity.getLayoutInflater();
if (convertView == null) {
convertView = inflater.inflate(R.layout.info_listview_items, null);
holder = new ViewHolder();
holder.txtFirst = (TextView) convertView.findViewById(R.id.heading);
holder.txtSecond = (TextView) convertView.findViewById(R.id.description);
holder.image=(ImageView)convertView.findViewById(R.id.arrow);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
HashMap map = list.get(position);
holder.txtFirst.setText(map.get("question").toString());
holder.txtSecond.setText(map.get("answer").toString());
return convertView;
}
当初は二TextView
可視性がView.GONE
です。
ListView
の項目をクリックすると、2番目のTextView
が表示されるという問題があります。しかし同時に、他の第2のTextView
のいくつかも見ることができます。 リストの最小数がであれば機能しました。私は5つのアイテムを試しました。
誰でも助けてくれますか?ありがとう!
項目をクリックして、2番目のテキストビューを非表示にして位置を使用してください。アダプタクラスをうまく投稿してください。 –
この場合、コードは実行されていますか?もしかしたら – gStephin
私は自分の質問を編集しました。今すぐ参照してください。初めて、明らかに他のものが実行される – Developer