【问题标题】:Can't convert to dimension: type=0x1 when running app on Android 4.1无法转换为维度:在 Android 4.1 上运行应用时 type=0x1
【发布时间】:2013-06-30 12:27:37
【问题描述】:

我最近开始使用 genymotion 代替经典的 Android 虚拟设备,但我遇到了一些问题。 当我尝试运行我的应用时,我收到了这个错误。

Can't convert to dimension: type=0x1

我来自 LayoutInflater..当我在 Genymotion 中运行它时,它说有一些布局参数类型错误..以下是来自 android studio 的两个屏幕截图。第一个是在 Nexus 4 上运行应用程序时拍摄的,第二个来自 Genymotion。

两者都应该运行 Jelly Bean,唯一的区别是 Genymotion 在 API 16 上,而 Nexus 4 在 4.2.2 上运行最新,因此 API 17..

问题来自我的自定义列表视图适配器 - 来自它的 getView 方法,所以我认为它必须与其中一种布局有关。 (我有两种不同类型的列表项)

list_heading.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="wrap_content">


<TextView
        android:id="@+id/listViewHeaderText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="8dp"
        android:paddingTop="10dp"
        android:paddingBottom="3dp"
        android:text="Nacionále"
        android:textAppearance="?android:attr/listSeparatorTextViewStyle"
        android:textColor="@color/main_cvut"/>


<RelativeLayout
        android:id="@+id/listViewHeaderLine"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="@color/main_cvut"/>
</LinearLayout>

list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/listItem"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/list_item_layout"
            android:clickable="true"
            android:focusable="true"
            android:paddingTop="?android:attr/listPreferredItemPaddingStart"
            android:minHeight="?android:attr/listPreferredItemHeight">

<TextView
        android:id="@+id/itemTitle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Title"
        android:paddingRight="?android:attr/listPreferredItemPaddingRight"
        android:paddingLeft="?android:attr/listPreferredItemPaddingLeft"
        android:textAppearance="?android:attr/textAppearanceMedium"/>

<TextView
        android:id="@+id/itemDescription"
        android:textColor="@android:color/darker_gray"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="description"
        android:paddingRight="?android:attr/listPreferredItemPaddingRight"
        android:paddingLeft="?android:attr/listPreferredItemPaddingLeft"
        android:textAllCaps="true"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:layout_marginBottom="?android:attr/listPreferredItemPaddingEnd"
        android:paddingBottom="?android:attr/listPreferredItemPaddingRight"
        android:layout_below="@+id/itemTitle"/>

<ImageView
        android:id="@+id/itemIcon"
        android:layout_width="32dp"
        android:layout_height="32dp"
        android:layout_alignParentEnd="true"
        android:layout_marginRight="16dp"
        android:layout_centerVertical="true"
        android:layout_alignParentStart="true"/>

<RelativeLayout
        android:id="@+id/itemBottomLine"
        android:layout_width="fill_parent"
        android:layout_height="1dp"
        android:layout_alignParentBottom="true"
        android:layout_marginTop="?android:attr/listPreferredItemPaddingEnd"
        android:background="#b5b5b5"
        android:layout_alignParentEnd="false"/>
</RelativeLayout>

我试图删除所有那些引用的填充、边距……但它完全没有效果…… 我还尝试在具有 API 16 的标准 android 模拟器中运行它,但它也不起作用..请你告诉我这段代码的哪一部分与该版本不兼容?

【问题讨论】:

  • 请显示您的 PeopleAdapter 的 getView 方法

标签: android android-layout layout-inflater


【解决方案1】:

始终查看属性的 API 级别:

<RelativeLayout
    ...
    ...
    android:layout_alignParentEnd="false"/>

android:layout_alignParentEnd 在 API 级别 17 中添加

http://developer.android.com/reference/android/widget/RelativeLayout.html#ALIGN_PARENT_END

【讨论】:

    猜你喜欢
    • 2018-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多