我从蓝牙聊天示例中获得以下代码。我所要做的就是通过蓝牙获取数据,并在表格布局中不断地将其显示为正确的字符串。感谢BT示例,大部分内容都是为我完成的,但是更改主文件中的布局并没有奏效。我采取了正确的方法,还是需要制作一个全新的适配器来处理我的数据和布局要求?我理解代码的方式是将数据放入具有R.layout.message格式的数组中,然后R.id.in告诉程序如何显示信息。我是否需要为每个要显示数组数据的单元格提供单独的字段ID?我感谢你能给我的任何帮助。
// Initialize the array adapter for the conversation thread
mConversationArrayAdapter = new ArrayAdapter<String>(this, R.layout.message);
mConversationView = (ListView) findViewById(R.id.in);
mConversationView.setAdapter(mConversationArrayAdapter);
来自layout.message文件
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#A4C639"
android:textSize="18sp"
/&GT;
来自layout.main文件
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="1,2">
<TableRow>
<TextView
android:layout_column="1"
android:text="RPM"
android:padding="3dip"
android:textSize="18sp"
/>
<TextView
android:layout_column="1"
android:text="Gear"
android:gravity="left"
android:padding="3dip"
android:textSize="24sp"
/>
<TextView
android:layout_column="1"
android:text="Temp"
android:gravity="right"
android:padding="3dip"
android:textSize="18sp"
/>
</TableRow>
<TableRow>
<ListView android:id="@+id/in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="1"
/>
<TextView
android:layout_column="1"
android:text=""
android:gravity="right"
android:padding="3dip"
android:textSize="18sp"
/>
<ListView android:id="@+id/in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:layout_weight="1"
/>
<TableRow>
<TextView
android:layout_column="1"
android:text="MPH"
android:padding="3dip"
android:textSize="18sp"
/>
<ListView android:id="@+id/in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="1"
/>
<TextView
android:layout_column="1"
android:text="Battery Voltage"
android:gravity="right"
android:padding="3dip"
android:textSize="18sp"
/>
android:layout_weight="1"
/>
<TextView
android:layout_column="1"
android:text=""
android:gravity="right"
android:padding="3dip"
android:textSize="18sp"
/>
<ListView android:id="@+id/in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="1"
/>
</TableRow>
<!--
<ListView android:id="@+id/in"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:stackFromBottom="false"
android:transcriptMode="disabled"
android:layout_weight="1"
/>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<EditText android:id="@+id/edit_text_out"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="bottom"
/>
<Button android:id="@+id/button_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/send"
/>
</LinearLayout>
-->
答案 0 :(得分:1)
尝试从ListView tutorial开始。由于您将复杂视图用作行,因此最终需要覆盖getView
上的ArrayAdapter
方法以使行布局膨胀并适当地设置其视图。