UnsupportedOperationException: ไม่สามารถแปลงเป็นขนาด: type = 0x1


90

ใน Android ฉันได้รับข้อผิดพลาดต่อไปนี้ในโปรแกรมจำลองและอุปกรณ์มือถือบางเครื่องแต่ไม่มีในแท็บเล็ต :

ฉันไม่เข้าใจว่าอะไรคือข้อผิดพลาดจริงๆ?

ฉันค้นหาบทเรียนมากมาย แต่ไม่พบวิธีแก้ปัญหาใด ๆ

โปรดช่วยฉันแก้ปัญหานี้

หมายเหตุ: ในแอปพลิเคชันนี้ฉันใช้ActionbarSherlockและธีมแล้วฉันอาจได้รับเนื่องจากไลบรารีนั้นหรือปัญหาอื่น ๆ หรือไม่?

บันทึกข้อผิดพลาดของฉันคือ:

09-11 17:52:57.342: E/AndroidRuntime(9935): FATAL EXCEPTION: main
09-11 17:52:57.342: E/AndroidRuntime(9935): android.view.InflateException: Binary XML file line #2: Error inflating class <unknown>
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.LayoutInflater.createView(LayoutInflater.java:613)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.ArrayAdapter.createViewFromResource(ArrayAdapter.java:371)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.ArrayAdapter.getView(ArrayAdapter.java:362)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.AbsSpinner.onMeasure(AbsSpinner.java:193)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.Spinner.onMeasure(Spinner.java:439)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.View.measure(View.java:15518)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:681)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.View.measure(View.java:15518)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.ScrollView.measureChildWithMargins(ScrollView.java:1217)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.ScrollView.onMeasure(ScrollView.java:321)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.View.measure(View.java:15518)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4825)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.View.measure(View.java:15518)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.LinearLayout.measureVertical(LinearLayout.java:847)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.LinearLayout.onMeasure(LinearLayout.java:588)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.View.measure(View.java:15518)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4825)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.FrameLayout.onMeasure(FrameLayout.java:310)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2176)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.View.measure(View.java:15518)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:1874)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1089)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1265)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:989)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4351)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.Choreographer$CallbackRecord.run(Choreographer.java:749)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.Choreographer.doCallbacks(Choreographer.java:562)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.Choreographer.doFrame(Choreographer.java:532)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:735)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.os.Handler.handleCallback(Handler.java:725)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.os.Handler.dispatchMessage(Handler.java:92)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.os.Looper.loop(Looper.java:137)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.app.ActivityThread.main(ActivityThread.java:5041)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at java.lang.reflect.Method.invokeNative(Native Method)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at java.lang.reflect.Method.invoke(Method.java:511)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at dalvik.system.NativeStart.main(Native Method)
09-11 17:52:57.342: E/AndroidRuntime(9935): Caused by: java.lang.reflect.InvocationTargetException
09-11 17:52:57.342: E/AndroidRuntime(9935):     at java.lang.reflect.Constructor.constructNative(Native Method)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.view.LayoutInflater.createView(LayoutInflater.java:587)
09-11 17:52:57.342: E/AndroidRuntime(9935):     ... 45 more
09-11 17:52:57.342: E/AndroidRuntime(9935): Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:463)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.TextView.<init>(TextView.java:916)
09-11 17:52:57.342: E/AndroidRuntime(9935):     at android.widget.TextView.<init>(TextView.java:578)
09-11 17:52:57.342: E/AndroidRuntime(9935):     ... 48 more

ไฟล์เค้าโครง XML ของฉันคือ:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:panel="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="@dimen/activity_vertical_margin"
        android:layout_marginLeft="@dimen/other_activity_horizontal_margin"
        android:layout_marginRight="@dimen/other_activity_horizontal_margin"
        android:layout_marginTop="@dimen/activity_vertical_margin"
        android:orientation="vertical" >

        <EditText
            android:id="@+id/custDetailsNameEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:hint="@string/name_cust_all_add"
            android:inputType="textPersonName"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsEmailEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsNameEditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/email_cust_all_add"
            android:inputType="textEmailAddress"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <Spinner
            android:id="@+id/custDetailsDistributorSpinner"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsEmailEditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:entries="@array/slide_menu_items"
            android:prompt="@string/select_distributor_prompt_add"
            android:spinnerMode="dialog" >
        </Spinner>

        <EditText
            android:id="@+id/custDetailsAddress1TitleEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsDistributorSpinner"
            android:layout_marginTop="15dp"
            android:hint="@string/address_1_cust_all_add"
            android:inputType="textPostalAddress"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsAddress2TitleEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsAddress1TitleEditText"
            android:layout_marginTop="15dp"
            android:hint="@string/address_2_cust_all_add"
            android:inputType="textPostalAddress"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsAddress3TitleEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsAddress2TitleEditText"
            android:layout_marginTop="15dp"
            android:hint="@string/address_3_cust_all_add"
            android:inputType="textPostalAddress"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <Spinner
            android:id="@+id/custDetailsCompanyAreaSpinner"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsAddress3TitleEditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:entries="@array/slide_menu_items"
            android:prompt="@string/select_company_area_prompt_add"
            android:spinnerMode="dialog" 
            android:fastScrollEnabled="true"
            >
        </Spinner>

        <EditText
            android:id="@+id/custDetailsPincodeEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsCompanyAreaSpinner"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/pincode_cust_all_add"
            android:inputType="number"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsPhone1EditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsPincodeEditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/phone_1_cust_all_add"
            android:inputType="phone"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsPhone2EditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsPhone1EditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/phone_2_cust_all_add"
            android:inputType="phone"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsMobileNo1EditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsPhone2EditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/mobile_no_1_cust_all_add"
            android:inputType="phone"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsMobileNo2EditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsMobileNo1EditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/mobile_no_2_cust_all_add"
            android:inputType="phone"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsContactPerson1EditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsMobileNo2EditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/contact_person_1_cust_all_add"
            android:inputType="text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsContactPerson2EditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsContactPerson1EditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/contact_person_2_cust_all_add"
            android:inputType="text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsTinNoEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsContactPerson2EditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/tin_no_cust_all_add"
            android:inputType="text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <EditText
            android:id="@+id/custDetailsCstNoEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsTinNoEditText"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="15dp"
            android:hint="@string/cst_no_cust_all_add"
            android:inputType="text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <RadioGroup
            android:id="@+id/custDetailsVTVRRadioGroup"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsCstNoEditText"
            android:layout_marginTop="15dp"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/custDetailsVTVRLableTextView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/vt_vr_cust_all_add"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <RadioButton
                android:id="@+id/custDetailsVTRadioButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:checked="true"
                android:text="@string/vt_cust_all_add" />

            <RadioButton
                android:id="@+id/custDetailsVRRadioButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/vr_cust_all_add" />
        </RadioGroup>

        <RadioGroup
            android:id="@+id/custDetailsCFormRadioGroup"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/custDetailsVTVRRadioGroup"
            android:layout_marginTop="15dp"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/custDetailsCFormLableTextView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/c_form_cust_add_all"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <RadioButton
                android:id="@+id/custDetailsCFormYesRadioButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:checked="true"
                android:text="@string/yes_cust_add_all" />

            <RadioButton
                android:id="@+id/custDetailsCFormNoRadioButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/no_cust_add_all" />
        </RadioGroup>
    </RelativeLayout>

</ScrollView>

styles.xmlในvaluesโฟลเดอร์:

<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <!--
        Base application theme, dependent on API level. This theme is replaced
        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
    -->
    <style name="AppBaseTheme" parent="android:Theme.Light">
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.
        -->
    </style>

    <style name="SlideBarTheme" parent="@style/Theme.Sherlock.NoActionBar">
        <item name="android:background">@drawable/slide_bg</item>
        <item name="android:cacheColorHint">@android:color/transparent</item>
        <item name="android:choiceMode">singleChoice</item>
    </style>

    <style name="ActivityTheme" parent="@style/Theme.Sherlock.Light">
        <item name="android:textColor">@color/activity_text</item>
        <item name="android:background">@color/activity_background</item>
    </style>

    <!-- For Widget -->

    <style name="MyAndroidTheme" parent="@style/Theme.Sherlock.Light.DarkActionBar">
        <item name="android:editTextStyle">@style/EditTextAppTheme</item>
        <item name="android:autoCompleteTextViewStyle">@style/AutoCompleteTextViewAppTheme</item>
        <item name="android:checkboxStyle">@style/CheckBoxAppTheme</item>
        <item name="android:spinnerStyle">@style/SpinnerAppTheme</item>
        <item name="android:dropDownSpinnerStyle">@style/SpinnerAppTheme.DropDown</item>
        <item name="android:spinnerDropDownItemStyle">@style/SpinnerDropDownItemAppTheme</item>
        <item name="android:listViewStyle">@style/ListViewAppTheme</item>
        <item name="android:listViewWhiteStyle">@style/ListViewAppTheme.White</item>
        <item name="android:spinnerItemStyle">@style/SpinnerItemAppTheme</item>
    </style>

</resources>

styles.xmlในvalues-11โฟลเดอร์:

    <resources>

    <!--
        Base application theme for API 11+. This theme completely replaces
        AppBaseTheme from res/values/styles.xml on API 11+ devices.
    -->

    <!-- API 11 theme customizations can go here. -->
    <style name="MyAndroidTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <item name="android:editTextBackground">@drawable/edit_text_holo_light</item>
        <item name="android:autoCompleteTextViewStyle">@style/AutoCompleteTextViewAppTheme</item>
        <item name="android:listChoiceIndicatorMultiple">@drawable/btn_check_holo_light</item>
        <item name="android:dropDownSpinnerStyle">@style/SpinnerAppTheme</item>
        <item name="android:listChoiceBackgroundIndicator">@drawable/list_selector_holo_light</item>
        <item name="android:activatedBackgroundIndicator">@drawable/activated_background_holo_light</item>
    </style>

</resources>

styles.xmlในvalues-14โฟลเดอร์:

<resources>

    <!--
        Base application theme for API 14+. This theme completely replaces
        AppBaseTheme from BOTH res/values/styles.xml and
        res/values-v11/styles.xml on API 14+ devices.
    -->
    <style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <!-- API 14 theme customizations can go here. -->
    </style>

</resources>

และฉันมีไฟล์ธีมที่กำหนดเอง:

ในvaluesโฟลเดอร์ชื่อstyles_apptheme.xmlและstyles_myactionbar.xmlในvalues-v11โฟลเดอร์ชื่อstyles_apptheme.xmlในvalues-v14โฟลเดอร์ชื่อstyles_myactionbar.xml

ฉันควรเปลี่ยนอะไร


อะไรคือ sdk เป้าหมาย, build sdk, max sdk สำหรับโปรเจ็กต์ของคุณและหมายเลขเวอร์ชันสำหรับอุปกรณ์ที่คุณลองจนถึงตอนนี้?
Onur อ.

นาที = 8 และเป้าหมาย = 17 ไม่ได้ระบุสูงสุด
Pratik Butani

อุปกรณ์ที่คุณลองใช้แล้วเป็นอย่างไรบ้าง?
Onur อ.

Samsung S Duos และ Emulator ซึ่งมันใช้งานไม่ได้ แต่ฉันลอง Samsung Tablet แล้วมันจะใช้งานได้
Pratik Butani

คำตอบ:


181

หลังจาก 2 วันฉันพบวิธีแก้ปัญหา จากเค้าโครงตามที่กำหนดไว้ในคำถามของฉันฉันมีสิ่งSpinnerที่ผูกพันกับประเพณีTextView:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/listTextViewSpinner"
    ...
    android:textSize="@dimen/spinner_list_item_text_size"
    ... />

@dimen/spinner_list_item_text_sizeที่นี่ผมมีทรัพยากรมิติสกัด:

สิ่งนี้ถูกกำหนดไว้ในdimens.xmlไดเร็กทอรีต่อไปนี้:

  • values-sw600dp
  • values-sw720dp-land

แต่ที่สำคัญฉันลืมกำหนดใน

  • values

หลังจากกำหนดทรัพยากร ( @dimen/spinner_list_item_text_size) ในvalues/dimens.xmlแล้วจะทำงานได้สำเร็จ


4
การแก้ไขของคุณช่วยฉัน - เราเพิ่งเปลี่ยนเป็นอุปกรณ์ที่เล็กกว่ามากและสิ่งเดียวกันก็เกิดขึ้น
Evan Knowles

5
ตรวจสอบแต่ละvaluesโฟลเดอร์สำหรับทรัพยากรของคุณ
Pratik Butani

ขอบคุณสำหรับคำตอบนี้ แต่ฉันต้องการทราบเหตุผลในการกำหนดค่าในแต่ละ dimens.xml เนื่องจากปัญหานี้ไม่ได้เกิดขึ้นในแต่ละอุปกรณ์
Dhruv


18

คุณพบใน logcat ของคุณก่อนข้อยกเว้นบรรทัดเช่นนี้:

08-19 10: 05: 58.008: W / ResourceType (3999): ล้มเหลวในการรับรายการสำหรับ 0x7f0a005f (t = 9 e = 95) ในแพ็คเกจ 0 (ข้อผิดพลาด -75)

ค้นหาหมายเลขมอก (ที่นี่ 0x7f0a005f) ใน Resource.class R.java ที่สร้างขึ้น ชื่อของตัวแปรคือ dimen-resource ที่หายไป


ฉันประสบปัญหาในการค้นหาไฟล์ที่ถูกต้องเพื่อค้นหาและพบว่าการใช้ "find in path" เพื่อค้นหาหมายเลขโครงการซึ่งเป็นทางเลือกง่ายๆ
Michiyo

ใช้อะไรรู้ปัญหา แต่หาที่แก้ไขไม่ได้
Kai Wang

10

สำหรับคนอื่น ๆ ที่มาที่นี่จากการค้นหาของ Google ตรวจสอบให้แน่ใจว่าคุณได้กำหนดมิติข้อมูลแทนที่จะเป็นอย่างอื่น Logcat จะชี้ให้คุณเห็นปัญหา

กล่าวคือ 1 ในเลย์เอาต์ของฉันมี TextView สองสามตัวพร้อมกับ android:textSize="?android:attr/textAppearanceSmall"

เปลี่ยนชื่อเป็น android:textAppearance="?android:attr/textAppearanceSmall" และทุกอย่างกลับมาดีอีกครั้ง


4

แก้ไข:ผมมีข้อผิดพลาดเดียวกัน, แต่มันกลับกลายเป็นฉันลืมที่จะกำหนดค่าในแต่เราได้กำหนดไว้ในdimens.xml dimens.xml(w820dp)ตรวจสอบให้แน่ใจว่าได้กำหนดค่าทั้งหมดแล้ว ทำงานให้ฉัน


ปัญหาเดียวกันทำให้เกิดข้อผิดพลาดเมื่อฉันอัปเกรดการอ้างอิง appcompat เป็น 25.3.1
behelit

3

คุณสามารถดูชุดข้อความนี้ปัญหาดูเหมือนจะเป็นปัญหาที่คุณมี:

https://github.com/JakeWharton/ActionBarSherlock/issues/446

ดูเหมือนว่าเคล็ดลับคือการทำสิ่งต่อไปนี้:

ฉันพบปัญหาเดียวกันในวันนี้ฉันหาสาเหตุไม่ได้ แต่ในที่สุดก็หาทางแก้ไขได้ ดูเหมือนว่าคุณไม่สามารถใส่คุณสมบัติใด ๆ ที่ M9 ไม่สามารถจดจำ int theme.xml ได้เช่นเดียวกับ android: actionBarStyle ดังนั้นวิธีแก้ปัญหาคือสร้าง theme.xml ใหม่ใน value-v14 และใส่คุณสมบัติเหล่านี้ทั้งหมดลงไป

โชคดี!


ดังนั้นฉันสามารถคัดลอกstyles_myactionbar.xmlด้วยในtheme.xml value-v14
Pratik Butani

ฉันไม่ได้อ่านกระทู้ทั้งหมดอาจจะลองคัดลอก theme.xml ก่อนเพื่อดูว่าเกิดอะไรขึ้น
Yoann Hercouet

แต่ฉันได้สร้างธีมที่กำหนดเองสำหรับแถบการดำเนินการแล้วฉันจะทำอะไรได้บ้าง?
Pratik Butani

หลังจากนั้นพวกเขาอธิบายสิ่งนี้:Anything in the theme related to the action bar and any action bar or action mode style should be in values-v14/ with the android prefix. Everything non-Android prefixed should be in values/ (along with the regular old theme stuff).
Yoann Hercouet

ฉันมีไฟล์ xml เลย์เอาต์ 15 ไฟล์ แต่ฉันพบข้อผิดพลาดเพียงไฟล์เดียวที่ฉันได้กำหนดไว้ข้างต้นปัญหาใดที่ฉันไม่เข้าใจ
Pratik Butani

3

สำหรับฉันปัญหาคือค่าในมิติข้อมูล

<dimen name="general_container_width">@dimen/match_parent</dimen>

android ไม่สามารถแก้ไข@dimen/match_parentเมื่อฉันพยายามรับค่าในมุมมองที่กำหนดเองของฉัน


ฉันก็เช่นกันฉันตั้ง 12 แทน 12dp
CDrosos

0

เพียงเพิ่มในเครื่องมือรูท: ละเว้น = "ContentDescription"

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:ignore="ContentDescription" >

0

และสำหรับฉันมันเป็น styles.xml ที่ไม่ดีที่กำหนด textSize ไม่ถูกต้อง: -

<resources>
    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar" >
        <item name="android:layout_height">match_parent</item>
        <item name="android:layout_width">match_parent</item>
        <item name="android:gravity">center</item>
        <item name="android:textSize">@style/TextAppearance.AppCompat.Small</item>
    </style>

    ...
</resources>

คำใบ้มาจากการติดตามสแต็กต่อไปนี้และตระหนักว่าข้างต้นเป็นหนึ่งในการเปลี่ยนแปลงที่เกี่ยวข้องกับขนาดที่ฉันทำตั้งแต่การรันครั้งล่าสุดที่ประสบความสำเร็จ

 Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1
                                                                      at android.content.res.TypedArray.getDimensionPixelSize(TypedArray.java:464)
                                                                      at android.widget.TextView.<init>(TextView.java:972)
                                                                      at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:62)
                                                                      at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:58)
                                                                      at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:54)
                                                                      at android.support.v7.widget.Toolbar.setTitle(Toolbar.java:756)
                                                                      at android.support.v7.widget.ToolbarWidgetWrapper.setTitleInt(ToolbarWidgetWrapper.java:261)
                                                                      at android.support.v7.widget.ToolbarWidgetWrapper.setWindowTitle(ToolbarWidgetWrapper.java:243)
                                                                      at android.support.v7.widget.ActionBarOverlayLayout.setWindowTitle(ActionBarOverlayLayout.java:615)
                                                                      at android.support.v7.app.AppCompatDelegateImplV9.onTitleChanged(AppCompatDelegateImplV9.java:636)
                                                                      at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:333)
                                                                      at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:289)
                                                                      at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
                                                                      at com.edsglobal.ecbc.AMAinActivity.onCreate(AMAinActivity.java:94)
                                                                      at android.app.Activity.performCreate(Activity.java:5231)
                                                                      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
                                                                      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
                                                                      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 
                                                                      at android.app.ActivityThread.access$800(ActivityThread.java:135) 
                                                                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
                                                                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                      at android.os.Looper.loop(Looper.java:136) 
                                                                      at android.app.ActivityThread.main(ActivityThread.java:5017) 
                                                                      at java.lang.reflect.Method.invokeNative(Native Method) 
                                                                      at java.lang.reflect.Method.invoke(Method.java:515) 
                                                                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 
                                                                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 
                                                                      at dalvik.system.NativeStart.main(Native Method

0

ในกรณีของฉันใช้Android Studio 3.5.3ฉันพยายามสร้างทรัพยากร dimen.xml ใหม่จากเครื่องมือสร้าง UI ของ Android ดังต่อไปนี้:

ป้อนคำอธิบายภาพที่นี่

สร้างทรัพยากรโดยไม่ต้องเพิ่ม"dp"ในค่าที่ฉันระบุ ดูแลสิ่งนี้จะช่วยแก้ปัญหาได้


0

มีปัญหาเดียวกัน

วิเคราะห์จากมุมมองทั้งหมด: คุณสมบัติ, มิติข้อมูลที่ไม่สามารถใช้ได้ในคุณสมบัติทั้งหมด, การเปลี่ยนแปลงเฟรมเวิร์กแบบกำหนดเองที่อาจทำใน OEM พยายามทำความเข้าใจด้วยว่าทรัพยากรนั้นไม่รวมอยู่ในแอปสุดท้ายที่สร้างจากแอปบันเดิลของเราหรือไม่ สร้างชุดอุปกรณ์ในเครื่องและแอปที่สร้างขึ้นสำหรับอุปกรณ์ของฉันจากคำแนะนำที่สร้างชุด APK เฉพาะอุปกรณ์แต่ไม่สามารถสร้างซ้ำได้ ไม่มีอะไรน่าสงสัยเมื่อฉันดู resource.asrc ด้วยตัววิเคราะห์ apk ในสตูดิโอ

ในที่สุดเราก็คิดว่าถ้าจำเป็นต้องใช้มิติข้อมูลนี้จริงๆ ไม่จริงเนื่องจากจะไม่ส่งผลต่อประสบการณ์ของผู้ใช้

ดังนั้นวิธีแก้ปัญหาคือการลบมิติข้อมูลนั้นออกจาก TextView :)


0

ฉันมีปัญหาเดียวกันเมื่อฉันลืมเพิ่ม "dp" ในการหรี่แสง

<dimen name="hpr_trash_icon_frame_width">40</dimen>
<dimen name="hpr_trash_icon_frame_height">36</dimen>

ถึง

<dimen name="hpr_trash_icon_frame_width">40dp</dimen>
<dimen name="hpr_trash_icon_frame_height">36dp</dimen>

0

ตรวจสอบว่าการอ้างอิงมิติมีคำจำกัดความ "sp" หรือไม่

<dimen name = "my_text_size"> 12sp </ dimen>

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.