根据6-2作业批复做了修改,请老师帮忙看看哪里还能精简,另外又遇到预览不显示内容问题

根据6-2作业批复做了修改,请老师帮忙看看哪里还能精简,另外又遇到预览不显示内容问题

linearlayout_information.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:layout_margin="2dp"
   android:padding="20dp">
<!--
第一部分代码。
-->
   <include layout="@layout/repeat3" />
   <include layout="@layout/repeat1" />
<!--
第二部分代码开始。其实是重复第一部分。
-->
   <include layout="@layout/repeat3" />
   <include layout="@layout/repeat1" />
<!--
第三部分代码开始。又重复一次。
-->
   <include layout="@layout/repeat3" />
   <include layout="@layout/repeat1" />
   <include layout="@layout/repeat3" />
</LinearLayout>


repeat1.xml          这个文件在预览里面看不到显示,白屏

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width="match_parent"
       android:layout_height="0dp"
       android:layout_weight="1"
       android:orientation="horizontal">
       <LinearLayout
           android:layout_width="0dp"
           android:layout_height="match_parent"
           android:layout_weight="1"
           android:orientation="vertical">

           <RelativeLayout
               android:orientation="vertical"
               android:layout_width="match_parent"
               android:layout_height="0dp"
               android:layout_weight="2"
               android:background="#7ba8b0">

               <TextView
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:text="此处为图书封面"
                   android:textSize="20sp" />
           </RelativeLayout>

           <RelativeLayout
               android:orientation="vertical"
               android:layout_width="match_parent"
               android:layout_height="0dp"
               android:layout_weight="1"
               android:background="#bfd9d4">

               <TextView
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content"
                   android:text="书名"
                   android:textSize="20sp" />
           </RelativeLayout>
       </LinearLayout>

       <LinearLayout
           android:layout_width="0dp"
           android:layout_height="match_parent"
           android:layout_weight="3"
           android:background="#7489ab"
           android:paddingLeft="2dp">
           <LinearLayout
               android:orientation="vertical"
               android:layout_width="match_parent"
               android:layout_height="match_parent"
               android:background="#2e4d5c">
               <TextView
                   android:layout_weight="1"
                   android:layout_width="fill_parent"
                   android:layout_height="wrap_content"
                   android:text="概述"
                   android:textSize="20sp"
                   android:background="#bfd9d4"
                   android:layout_marginBottom="10px"/>
               <TextView
                   android:layout_weight="1"
                   android:layout_width="fill_parent"
                   android:layout_height="wrap_content"
                   android:text="作者"
                   android:textSize="20sp"
                   android:background="#bfd9d4"
                   android:layout_marginBottom="10px"/>
               <TextView
                   android:layout_weight="1"
                   android:layout_width="fill_parent"
                   android:layout_height="wrap_content"
                   android:text="日期"
                   android:textSize="20sp"
                   android:background="#bfd9d4"
                   android:layout_marginBottom="10px"/>
           </LinearLayout>
       </LinearLayout>
</LinearLayout>

repeat3.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:orientation="vertical"
   android:layout_width="match_parent"
   android:layout_height="20dp"
   android:background="#baccde">
</LinearLayout>

附:

讲师点评:作业中存在以下问题:1)既然作业需求中的xml在linearlayout_information文件中,那么setContentView(R.layout.activity_main)就应该改为 setContentView(R.layout.linearlayout_information);。2)UI中有多余的RelativeLayout,没必要在TextView外面嵌套一层RelativeLayout,像 android:layout_weight,android:background可以直接设置在TextView。3)还有单独的View,这也是多余的,其实完全可以为它们的父控件(例如封面和书名的父控件)LinearLayout设置背景色来解决,其它控件增加layout_marginBottom,layout_marginTop,layout_marginLeft,layout_marginRight等属性增加间隔,从而显示父容器,以达到显示效果。这样可以减少多余的控件,提高显示效率。 4)可以重复利用。把重复的抽取出来,然后使用<include >标签重复引入。5)以后可以直接提交一个module,不和提交整个工程。作业中如果有疑问,可在问答区进行提问,我们的老师会帮您答疑解惑,祝学习愉快!

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

没必要存在repeat3.xml,repeat1里增加,android:layout_marginBottom,layout_marginTop,layout_marginLeft,layout_marginRight等属性增加间隔,从而显示父容器背景就可以了。祝:学习愉快

  • 慕盖茨8565882 提问者 #1
    嗯嗯,谢谢。不过上面提到的另外一个问题:repeat1.xml 这个文件在预览里面看不到显示,白屏。这个可能是什么原因造成的,解决办法?
    2020-04-20 15:46:56
  • 好帮手慕雪 回复 提问者 慕盖茨8565882 #2
    老师这里测试的没有问题哦。你的APP能运行吗?能运行就没有问题,有些时候是xml加载慢的问题,预览不出来不用管它,运行没问题就行了
    2020-04-20 15:58:30
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师