根据我的代码运行新的Lint工具.它提出了很多好的建议,但这个我无法理解.
此标签及其子代可以替换为一个和复合drawable
问题:检查当前节点是否可以使用复合drawables替换为TextView.
包含ImageView和TextView的LinearLayout可以作为复合drawable更有效地处理
这是我的布局
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_centerInParent="true">
<ImageView
android:id="@+id/upImage"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_gravity="center_vertical"
android:scaleType="centerInside"
android:src="@drawable/up_count_big">
</ImageView>
<TextView
android:id="@+id/LikeCount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="2dp"
android:layout_marginBottom="1dp"
android:textColor="@color/gray"
android:textSize="16sp"
android:layout_gravity="center_vertical">
</TextView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,有人能提供一个如何制作复合可绘制的具体例子吗?
android textview android-layout android-linearlayout compound-drawables
我需要使用两个图像而不是ON/OFF状态来设置切换按钮.
在关闭状态下我设置了背景图像.但是当我使用背景图像时,无法删除OFF文本.
而且我无法通过点击切换按钮在ON状态下设置另一个图像:(我是android的新手.我希望你们帮助我摆脱这个问题
当我将android:id/background添加到命名空间时,Lint抱怨它"无法解析符号",即使我请求添加它而不是调用它.代码按写入方式工作,但错误仍然存在.当我更改时<item android:id="@+android:id/background" to <item android:id="@+id/background",应用程序停止工作(另一个呼叫中断).我的问题是:为什么Lint不认识我将android:id/background添加到命名空间,即使对它的调用运行良好?有没有更好的方法来为这个项目提供一个不会让Lint抛出错误的id?
以下图层列表中项目的所有三个命名空间定义都会引发一个lint错误:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+android:id/background"
android:drawable="@drawable/custom_ratingbar_empty" />
<item android:id="@+android:id/secondaryProgress"
android:drawable="@drawable/custom_ratingbar_empty" />
<item android:id="@+android:id/progress"
android:drawable="@drawable/custom_ratingbar_filled" />
</layer-list>
Run Code Online (Sandbox Code Playgroud)
我找到了这个并尝试运行build-> clean,但没有成功.