0
私はボタンをクリックしていくつかの家を追加できるアプリがあります。私はこれを表示するためにリストビューを使用していますが、私は1つの行に4つの家を追加する必要があります。ボタンをクリックすると、同じ行ではなく新しい行に家が追加されます。 ListViewの1行に要素を追加するコードはどれですか?ListViewでさらにエレメンを追加 - Android
package com.example.andraripan.myapplication;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.ArrayList;
/**
* Created by andraripan on 3/2/17.
*/
public class ListViewAdapter extends BaseAdapter {
private ArrayList<String> animals;
private ArrayList<Integer> houses;
private Activity activity;
public ListViewAdapter(Activity activity, ArrayList<String> animals, ArrayList<Integer> houses) {
super();
this.animals = animals;
this.houses = houses;
this.activity = activity;
}
@Override
public int getCount() {
return animals.size();
}
@Override
public String getItem(int position) {
return animals.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
public static class ViewHolder
{
public ImageView imgViewHouse;
public TextView txtViewTitle;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder view;
LayoutInflater inflator = activity.getLayoutInflater();
if(convertView==null)
{
view = new ViewHolder();
convertView = inflator.inflate(R.layout.gridview_row,null);
view.txtViewTitle = (TextView) convertView.findViewById(R.id.textView1);
view.imgViewHouse = (ImageView) convertView.findViewById(R.id.imageView1);
convertView.setTag(view);
}
else
{
view = (ViewHolder) convertView.getTag();
}
view.txtViewTitle.setText(animals.get(position));
view.imgViewHouse.setImageResource(houses.get(position));
return convertView;
}
}
1匹の動物の場合:
この
は私のListViewAdapterあるCow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(coins >=15) {
animals.add("Cows"+ "");
houses.add(R.drawable.house);
mAdapter.notifyDataSetChanged();
coins-=15;
Coins.setText(String.valueOf(coins));
}
else {
Toast.makeText(c, "Insufficient funds!", Toast.LENGTH_SHORT).show();
}
dialog.dismiss();
}
});
私の理解によれば、最初の行にボタンが必要です。ボタンをクリックすると、4つの家がボタンの右側にある最初の行に表示されます。 –
私は私の記述ではあまり明確ではありませんでした。例えば、私は3種類の動物を持っています。Foxes、Wolves and Hippos。最初の行では、私はFoxesの家をボタンで追加しました。そのボタンをもう一度クリックすると、その行に別の家を追加すると、最初の家の後ではなく、2番目の行に私の家が置かれます。もっと世話をする行を追加する方法はわかりません。 – Anr14
OnClickListenerについてコードを投稿する必要があります。 – Paul