我试图在 TextView
(源)和 EditText
(目标)之间共享文本,但它没有正常工作。
问题的上下文是“Start an activity with a shared element”转换,使用 android:transtionName
属性。
新 Activity 启动后,所有其他共享 View (ImageView
) 都有并显示它们的值。 EditText
知道内容,因为当我设置焦点时它会正确显示。 “et.getText()
”的记录器显示 EditText
内容没问题,但未显示。
操作顺序如下:
源 Activity “A”具有原始数据:
TextView
值:“Hello world”。android:transtionName="transition_text"
TextView
显示:“Hello world”
在用户事件中,使用共享元素转换启动 Activity “B”并添加所有要共享的元素。
进入“B”
onCreate
方法,正确获取和设置共享数据。所有元素都包含它们的值,但 EditText 不显示它:EditText
值:“Hello world”。android:transtionName="transition_text"
EditText
显示:“”
共享元素转换可能不允许在不同类型的 TextView 之间进行转换(TextView
-> EditText
)?
谢谢
最佳答案
尝试从 TextView
获取文本 然后隐藏 toString()
然后在 EditText
上设置文本
TextView tv = new TextView(this);
EditText et = new EditText(this);
tv.setText("Hello World");
String source = tv.getText().toString();
et.setText(source);
关于android - TextView 和 EditText 之间的共享元素转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30313615/