【发布时间】:2015-04-19 12:29:21
【问题描述】:
我正在开发一个必须从 JSONArray 写入数据的 android 项目。我尝试对每个数组输入使用 TextView。所以我曾经编写代码在我现有的布局上添加一个滚动视图并添加一个 TextView init。代码运行良好,没有任何错误,但是当我编译它时,UI 中没有任何内容。 (在我的手机中)后来,我尝试将另一个 TextView 添加到现有的 LinearLayout 而不是 ScrollView 中,当时它也不起作用。我检查了其他问题和论坛,在我看来,我已经完成/写了他们所做的一切,但我仍然找不到我的错误。
更新 1:我在另一个 LinearLayout 中添加了 ScrollView,并在其中保留了另一个 LinearLayout。 TextView 被添加到 ScrollView 内的 LinearLayout 中。外部 LinearLayout 持有另一个 TextView 只是发布异常日志(我的 avd 内核崩溃了)。
更新 2 我已将滚动视图的高度设为 WRAP_CONTENT,并在其下方添加了其他四个 TextView。现在,正在加载的应用程序显示顶部 TextView 和最后一个 TextView 组之间存在相当大的差距。但是,ScrollView 仍然没有显示任何内容。
我的代码已更新并在下面给出:
Java 代码:
TextView t1 = (TextView)findViewById(R.id.t1);
LinearLayout mainLinear = (LinearLayout)findViewById(R.id.mainLinear);
try {
LinearLayout linear =(LinearLayout)findViewById(R.id.scroll_container);
linear.setBackgroundColor(0xABCDEF);
//for (int i = 0; i < 10; i++) {
TextView tv = new TextView(getApplicationContext());
tv.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT
));
tv.setTextSize(25);
//tv.setId(1);
tv.setTextColor(0x000000);
tv.setPadding(10, 10, 10, 10);
tv.setText("I am serial " + 0 + "\n" + "is there something more");
linear.addView(tv);
TextView tv1 = new TextView(getApplicationContext());
tv1.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT
));
tv1.setTextSize(25);
//tv.setId(1);
tv1.setTextColor(0x000000);
tv1.setPadding(10, 10, 10, 10);
tv1.setText("I am serial 3 " + 1 + "\n" + "is there something more");
linear.addView(tv1);
//tv.append("my name is apple " + 0 + "\n");
TextView tv5 = new TextView(getApplicationContext());
tv5.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT
));
tv5.setTextSize(25);
//tv.setId(1);
tv5.setTextColor(0x000000);
tv5.setPadding(10, 10, 10, 10);
tv5.setText("Linear Layout e" + 0 + "\n");
mainLinear.addView(tv5);
// }
}
catch (Exception e)
{
e.printStackTrace();
t1.setText("<><>"+e);
}
我的布局 XML 文件:
<LinearLayout
android:id="@+id/mainLinear">
<TextView android:text="Word: Monkey Kaka"
android:textSize="25dp"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/t1"
android:textColor="#000000"/>
<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/ScrollView">
<LinearLayout
android:id="@+id/scroll_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" />
</ScrollView>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="25dp"
android:text="Test 1" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Test 2"
android:textSize="25dp"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Test 3"
android:textSize="25dp"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Test 4"
android:textSize="25dp"
/>
</LinearLayout>
感谢您的帮助。
【问题讨论】:
标签: java android xml android-layout