ポップアップウィンドウを作成するために非常に多くのサイトを検索しましたが、カスタムアダプタークラスでポップアップウィンドウを作成するための適切なソリューションが得られませんでした.アクティビティクラスでポップアップウィンドウを作成するためだけに見つかりました.
私の問題は、ArrayList に適合した row.xml ファイルに TextView があるという点で、ArrayAdapter を拡張するカスタム アダプター クラスを使用していることです。そのテキストビューをクリックすると、カーソルポイントの位置にポップアップウィンドウが表示されます。
これが私のコードです:
Clockin_Adapter adap = new Clockin_Adapter(getApplicationContext(), R.layout.group_clkin_row, result);
clockin.setAdapter(adap);
public static class Clockin_Adapter extends ArrayAdapter<DataItem> {
ArrayList<DataItem> items;
Context con;
int[] buttonStates;
Time t ;
public Clockin_Adapter(Context context, int textViewResourceId, ArrayList<DataItem> objects) {
super(context, textViewResourceId, objects);
this.con = context;
this.items = objects;
buttonStates=new int[objects.size()];
for(int i=0;i<objects.size();i++)
{
buttonStates[i]=0;
}
}
@Override
public int getCount() {
if(employeeList==null){
return 0;
}
else{
return employeeList.length;
}
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
View row = convertView;
final ViewHolder holder;
if (convertView == null) {
row = LayoutInflater.from(parent.getContext()).inflate(R.layout.group_clkin_row, null);
holder=new ViewHolder();
} else {
//code
}
}
holder.name = (TextView)row.findViewById(R.id.group_name);
holder.name.setText(item.getName());
holder.name.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//Need PopUp window Here
}
});
static class ViewHolder {
TextView name;
TextView time;
}
please give me solution.
Thanks in advanced.