我正在尝试执行类似于本教程(https://github.com/ScaleDrone/android-chat-tutorial)中的该聊天操作,但我不想发送短信。
基本上,我希望该程序具有消息的列表视图(就像本教程中既有来自我自己的消息又来自其他人的消息一样。就像您在发短信给某人一样)。
似乎错误来自初始化java_class中的message_Body。
TextView myMessage = (TextView) findViewById(R.id.message_body);
当我调试时说myMessage为空。有没有人可以帮助我调试此问题?谢谢!
my_messages.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="10dp"
android:paddingRight="15dp"
android:paddingLeft="60dp"
android:clipToPadding="false">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/message_body"
android:background="@drawable/my_message"
android:textColor="#fff"
android:padding="10dp"
android:elevation="2dp"
android:textSize="18dp"
android:layout_alignParentRight="true"
android:text="Placeholder message"
/>
</RelativeLayout>
their_message.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingVertical="10dp"
android:paddingLeft="15dp"
android:paddingRight="60dp"
android:clipToPadding="false">
<View
android:id="@+id/avatar"
android:layout_alignParentLeft="true"
android:scaleType="centerInside"
android:background="@drawable/circle"
android:layout_width="34dp"
android:layout_height="34dp" />
<TextView
android:id="@+id/name"
android:layout_marginLeft="15dp"
android:layout_toRightOf="@+id/avatar"
android:layout_alignTop="@+id/avatar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="4dp"
android:text="Rose"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/message_body"
android:layout_below="@+id/name"
android:layout_alignLeft="@+id/name"
android:background="@drawable/their_message"
android:paddingVertical="12dp"
android:paddingHorizontal="16dp"
android:elevation="2dp"
android:textSize="18dp"
android:text="How are you doing? This is a long message that should probably wrap."
/>
</RelativeLayout>
在我的java类中,我有这个
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
ListView view = (ListView) findViewById(R.id.mathListView);
Intent in = getIntent();
int index = in.getIntExtra("com.example.mathhack.ITEM_INDEX", -1);
if (index > -1) {
TextView myMessage = (TextView) findViewById(R.id.message_body);
List<TextView> textViewList = new ArrayList<TextView>();
ListAdapter adapter = new ArrayAdapter<TextView>(this, android.R.layout.simple_list_item_1, textViewList);
myMessage.setText("test1");
textViewList.add(myMessage);
view.setAdapter(adapter);
}
}