我无法弄清楚为什么我的代码无效:
第一项活动
public static TextView name_contact;
public static TextView message_contact;
public static TextView count_contact;
public static TextView timestamp_contact;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.researchpurpose);
final ListView listView = (ListView) findViewById(R.id.listViewConvlist);
chatRoomsAdapter = new ChatRoomsAdapter(getApplicationContext(), R.layout.chat_rooms_list_row);
listView.setAdapter(chatRoomsAdapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View v, int position, long arg3)
{
message_contact = (TextView) v.findViewById(R.id.message);
}
});
}
第二项活动
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second_acitivy);
ImageButton buttonSend = (ImageButton) findViewById(R.id.imageButton);
buttonSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
FirstActivity.message_contact.setText("IL N'Y A QUE TOI");
}
});
}
因为如果我将下面的代码放在第二个活动中,它就可以了!
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second_acitivy);
FirstActivity.message_contact.setText("IL N'Y A QUE TOI");
}
检查日志时,我没有收到任何错误......
答案 0 :(得分:0)
我明白了!事实证明虚拟键盘在显示时停止了订单(当我说我的意思是FirstActivity.message_contact.setText("IL N'Y A QUE TOI");
时)。
所以我在使用这段代码发送订单之前关闭/隐藏虚拟键盘:
View view = this.getCurrentFocus();
if (view != null) {
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
在此之后,正确设置了文本。
但我必须说我不明白为什么在显示键盘时代码不起作用。