我尝试像这样编码
<ImageView android:id="@+id/ivIcon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@android:drawable/ic_btn_speak_now" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item0" />
但它输出像这样。它不在同一行:(
我的整个xml代码就像这样。
(icon) item
将是一个集合,用户将点击该集合以继续进行活动
所以我需要将它们组合在一起。
<LinearLayout style="@style/behindMenuScrollContent"
android:paddingTop="25dp" >
<TextView
style="@style/behindMenuItemTitle"
android:text="Subject" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item0" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item1" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item2" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item3" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item4" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item5" />
<TextView
style="@style/behindMenuItemTitle"
android:text="Subject2" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item6" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item7" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item8" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item9" />
<TextView
style="@style/behindMenuItemLabel"
android:text="Item10" />
<Button
android:id="@+id/behind_btn"
style="@style/behindMenuItemLabel"
android:text="BUTTON" />
</LinearLayout>
更新:我不需要图标和文字之间的边距,但只需要左边的边距!
style.xml
<style name="behindMenuItemLabel">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_marginLeft">20dp</item>
<item name="android:layout_marginBottom">4dp</item>
<item name="android:textSize">30sp</item>
<item name="android:textColor">#d2d2d2</item>
</style>
答案 0 :(得分:4)
你需要使用textview的drawable属性完全填充,下面我举一个例子:
<TextView
android:id="@+id/bookTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:drawableBottom="@drawable/icon"
android:text="Item 0"
style="@style/behindMenuItemLabel"/>
希望有所帮助
答案 1 :(得分:4)
尝试这样的事情:
<TextView
android:id="@+id/behindMenuItemLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:layout_weight="40"
android:drawablePadding="-5dp"
android:gravity="center_vertical"
android:text="Speak Now"
android:textColor="#000000"
style="@style/behindMenuItemLabel" />
这是你的style.xml
<style name="behindMenuItemLabel">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_marginLeft">20dp</item>
<item name="android:layout_marginBottom">4dp</item>
<item name="android:textSize">30sp</item>
<item name="android:drawableLeft">@drawable/your_icon</item>
<item name="android:textColor">#d2d2d2</item>
</style>
答案 2 :(得分:3)
您可以在TextView
右:
android:drawableRight="@drawable/icon"
顶部:
android:drawableTop="@drawable/icon"
底部:
android:drawableBottom="@drawable/icon"
左:
android:drawableLeft="@drawable/icon"
答案 3 :(得分:2)
不要将单独的imageView用于图标。 在textview中设置drawable in right(或left,top,bottom)
android:drawableRight="@android:drawable/ic_btn_speak_now"
答案 4 :(得分:1)
您可以使用此attr android:drawableLeft="your_drawable_id"
设置文本左侧的图像,以便xml标记如下:
<TextView
android:id="@+id/bookTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:drawableLeft="@drawable/icon"
android:text="Item 0"
style="@style/behindMenuItemLabel"/>
您还可以将图像设置为右侧,顶部或底部。祝福。