我正在创建一个像本地联系人应用程序一样的ContactEntry Activity视图。我已成功完成此操作但在编辑文本选择时遇到问题。我想首先将第一行的EditText(组织名称)作为光标可见但是ListView使第二行的Edittext(电话号码)变为光标可见,请同时找到附加的图像。
请帮我解决这个问题。
这是我的Adapter类。
private class CustomItemEntryAdapter extends BaseAdapter{
private LayoutInflater mInflator;
@Override
public int getCount() {
// TODO Auto-generated method stub
return 4;
}
public CustomItemEntryAdapter(Context context){
mInflator = getLayoutInflater();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return getItem(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ItemsToFillViewHolder holder = null;
if(position==0){
convertView = mInflator.inflate(R.layout.institution_name_cell, null);
EditText edittext = (EditText)convertView.findViewById(R.id.editText_institution);
edittext.setCursorVisible(true);
}else{
convertView = mInflator.inflate(R.layout.saving_account_cell, null);
}
if(position==1){
if(map_CellView.containsKey(position)){
convertView = map_CellView.get(position);
}else{
holder = new ItemsToFillViewHolder();
convertView.setTag(position);
holder.cellTitle = (TextView)convertView.findViewById(R.id.txt_saving_acc);
holder.cellTitle.setText("Phone");
holder.cellImage = (ImageView)convertView.findViewById(R.id.image_add);
holder.cellImage.setTag(convertView);
holder.cellImage.setOnClickListener(imageclickListener);
AddDefaultCellToListView(convertView,position);
}
}else if(position==2){
if(map_CellView.containsKey(position)){
convertView = map_CellView.get(position);
}else{
holder = new ItemsToFillViewHolder();
convertView.setTag(position);
holder.cellTitle = (TextView)convertView.findViewById(R.id.txt_saving_acc);
holder.cellTitle.setText("Email");
holder.cellImage = (ImageView)convertView.findViewById(R.id.image_add);
holder.cellImage.setTag(convertView);
holder.cellImage.setOnClickListener(imageclickListener);
AddDefaultCellToListView(convertView,position);
}
}else if(position==3){
if(map_CellView.containsKey(position)){
convertView = map_CellView.get(position);
}else{
holder = new ItemsToFillViewHolder();
convertView.setTag(position);
holder.cellTitle = (TextView)convertView.findViewById(R.id.txt_saving_acc);
holder.cellTitle.setText("Address");
holder.cellImage = (ImageView)convertView.findViewById(R.id.image_add);
holder.cellImage.setTag(convertView);
holder.cellImage.setOnClickListener(imageclickListener);
AddDefaultCellToListView(convertView,position);
}
}
return convertView;
}
}
先谢谢。
答案 0 :(得分:4)
试试这个......
EditText edittext = (EditText)convertView.findViewById(R.id.editText_institution);
edittext.requestFocus();
答案 1 :(得分:2)
如果第二个(工作)editText具有'requestFocus'属性,也请检查xml。 如果是这样,删除它。 (并将其移至第一个editText,如Muni建议的那样)。