TextView和ImageView的Android布局问题

时间:2012-02-01 11:40:23

标签: java android xml android-layout

我刚刚开始为Android编写一个新的应用程序,并发现警告。

  

此标签及其子代可以替换为一个复合可绘制

我遇到的另一个问题是图像放在右侧。如何在不遇到layout_wight问题的情况下执行此操作?见图像([2],黄色和绿色高亮显示)。

我想关注android design guide并阻止警告。那么我该如何解决这个问题呢?实际我的代码如下:

<LinearLayout
    android:id="@+id/mainTitleLinearLayout"
    android:layout_width="match_parent"
    android:layout_height="48dp"
    android:orientation="horizontal" >

    <ImageView
        android:id="@+id/mainTitleImageView"
        android:layout_width="48dp"
        android:layout_height="48dp"
        android:padding="8dp"
        android:src="@drawable/ic_launcher"
        android:contentDescription="@string/app_name"/>


  <TextView
      android:id="@+id/mainTitleTextView"
      android:layout_width="fill_parent"
      android:layout_height="48dp"
      android:gravity="left|center_vertical"
      android:paddingBottom="4dp"
      android:paddingLeft="0dp"
      android:paddingRight="0dp"
      android:paddingTop="4dp"
      android:text="@string/app_name"
          android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>
<LinearLayout android:layout_width="match_parent" android:layout_height="2dp" android:background="#0099CC"></LinearLayout>

你们是否知道一些构建自定义组件的好教程,所以我不会再次出现此错误或/并解决放置问题?

1 http://developer.android.com/design/style/metrics-grids.html

enter image description here

2 个答案:

答案 0 :(得分:1)

我写了blog post about compound drawables,可以帮助您解决问题。

答案 1 :(得分:1)

这不是一个错误,只是一个信息(或警告),有一种更有效的方法来实现包含图像和文本视图的布局中的行。你可以这样做:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/text1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:drawableLeft="@drawable/error_tab"
    />

drawableLeft属性将给定的drawable添加到文本视图的左侧。以类似的方式,您可以将图像放在右侧。

但是,您将无法微调图像的位置。文本视图。