2017-03-17 37 views
0

我的listview有两个textview。我想从文字视图之一获取文字。我曾尝试使用下面的代码尝试,但这个是我得到“用户@ 41f0a6b0”如何从列表视图中获取文本

allusers.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { 
      // TextView textView = (TextView) view.findViewById(R.id.nameHolder); 
      String name = adapterView.getItemAtPosition(i).toString(); 

我究竟做错了什么?

我getView()方法:

public View getView(int position, View convertView, ViewGroup parent) { 
     ViewHolder holder; 
if (convertView == null) { 
convertView = layoutInflater.inflate(R.layout.adapter_listing, null, false); 
      holder = new ViewHolder(); 
holder.fullname = (TextView) convertView.findViewById(R.id.user_fullname); 
    convertView.setTag(holder); 
} else { 
      holder = (ViewHolder) convertView.getTag(); 
     } 
+0

你能分享你的getView()方法吗? – DroidDev

+1

您正尝试仅使用'toString'将对象转换为字符串。你看到你哪里出错了吗? – Coder

+0

@ User54321我在我的代码中添加了我的getview()方法,请检查它。 – Heman

回答

0

这是正确的做法:

 allusers.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
       @Override 
       public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { 
        TextView textView = (TextView) view.findViewById(R.id.nameHolder); 
        String text = textView.getText().toString(); 
        Toast.makeText(getApplicationContext(), "Selected item: " + text + " - " + position, Toast.LENGTH_SHORT).show(); 
       } 
     } 
+0

Toast.makeText(getApplicationContext(),“Selected item:”+ text +“ - ”+ position,Toast.LENGTH_SHORT).show();我试过这个,它仍然烘烤数字,但我在我的文本中有文字。 – Heman

0

可能:

String name = adapterView.getItemAtPosition(i).getText.toString(); 
0

你想获得该项目是一个像一个用户对象? 然后尝试类似:

String name = adapterView.getItemAtPosition(i).getUserName(); 

如果有一个功能getUserName在你的对象

0

@Kamesh 感谢先生,你帮我解决这个问题。我这是怎么传开的:

allusers.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { 
     TextView textView = (TextView) view.findViewById(R.id.nameHolder); 
      String name = adapterView.getItemAtPosition(i).toString(); 

    User user= (User) allusers.getItemAtPosition(i); 

Toast.makeText(getApplicationContext(), “选择的项目:” + user.getFirstname()+ “ - ” + 1,吐司 LENGTH_SHORT).show() ;

相关问题