当项目点击监听器上有很多时,检索一个文本视图的值

时间:2013-08-23 01:23:08

标签: android

我为我的列表定义了自定义视图。自定义视图中有3个文本字段。在项目单击侦听器上,我想要检索其中一个文本视图的值。我怎么能这样做?

4 个答案:

答案 0 :(得分:0)

textView.getText()。toString()可用于检索值

这样的事情:

@Override
public void onClick(View v) {
    switch(v.getId()){

        case R.id.textview1:
            mTextview1.getText().toString();
            break;

        case R.id.textview2:
            mTextview2.getText().toString();

            break;

        case R.id.textview3:
            mTextview3.getText().toString();
            break;
   }    

答案 1 :(得分:0)

尝试这个我在我的项目中使用了这个代码:)

final View tv = v.findViewById(R.id.text);
final String s = (String) ((TextView) tv.findViewById(R.id.text)).getText();

答案 2 :(得分:0)

使用下面的代码

mListviewObject.setOnItemClickListener(new OnItemClickListener() {
        @Override 
        public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
            personId = (TextView) view.findViewById(R.id.personId);
            String val_personid = personId.getText().toString();                      

        }
    });

通过这种方式,您可以选择要引用的文本视图

答案 3 :(得分:0)

所有视图都有一个findViewById(int id)方法。您可以使用此方法在自定义视图中找到较小的视图,如下所示:

View customView;
customView.setOnItemClickListener(new OnItemClickListener() {
    @Override 
    public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
        View innerView = customView.findViewById(R.id.innerView);                   

    }
});

然后你将掌握你的内心观点。