如何在android中将TextView转换为EditText?

Vin*_*oth 7 android android-layout

我从数据库中获取数据,然后将其附加到TextView.当我长时间单击TextView时,我想将其转换为EditText.这是我在TextView上设置数据的方法:

TextView text = (TextView) vi.findViewById(R.id.menutext);
text.setText(itemnames[position]);//comes from database append to text view
Run Code Online (Sandbox Code Playgroud)

现在我想定义一个setOnLongClickListener来将它转换为EditText.

text.setOnLongClickListener(new OnLongClickListener() {

    public boolean onLongClick(View v) {                
        String edititemname=itemnames[position];
        System.out.println(edititemname);
        return true;                
    }
});
Run Code Online (Sandbox Code Playgroud)

edititemname保持长按一下该项目.我想将相同的信息填入EdiText.请帮我.

Tia*_*ida 17

据我所知,你无法将一个转换为另一个.你能做的是:在xml中创建一个TextView和一个EditText.显示TextView时隐藏EditText.然后,在onclick的监听器上,您可以:

text.setVisibility(View.GONE); 
editText.setVisibility(View.VISIBLE);
editText.setText(edititemname);
Run Code Online (Sandbox Code Playgroud)

可以在定义文本的位置定义editText变量.你必须使用findViewById.