【问题标题】:CircleImageView crashes when used as tablayoutCircleImageView 在用作 tablayout 时崩溃
【发布时间】:2017-08-20 00:52:47
【问题描述】:

我有一个如下所示的 XML 设置。

tab_icon_simple.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:gravity="center"
    android:layout_height="match_parent">

    <ImageView
        android:id="@android:id/icon"
        android:layout_width="@dimen/size_tab_image"
        android:scaleType="fitCenter"
        android:layout_height="@dimen/size_tab_image"/>

// I add this CircleImageView here to conditionally use this to render a profile image. To cover the default imageView icon.

    <de.hdodenhof.circleimageview.CircleImageView
        android:id="@+id/profile_icon"
        android:layout_width="@dimen/size_tab_image"
        android:scaleType="fitCenter"
        android:visibility="gone"
        android:layout_height="@dimen/size_tab_image" />
</RelativeLayout>

在我的代码中,我使用上面的 XML 作为 tabLayout 的“customView”,

mTabLayout.getTabAt(0).setCustomView(R.layout.tab_icon_simple).setIcon(someIcon1);
mTabLayout.getTabAt(1).setCustomView(R.layout.tab_icon_simple).setIcon(someIcon2);
mTabLayout.getTabAt(2).setCustomView(R.layout.tab_icon_simple).setIcon(someIcon3);

但是,每当代码执行 .setCustomView 时,我的 android 立即崩溃。 看起来 android 无法为 CircleImageView 充气?我该怎么办。

  java.lang.RuntimeException: Unable to start activity ComponentInfo{com.getcharly.android.user/com.getcharly.android.view.activity.main.MainActivity_}: android.view.InflateException: Binary XML file line #13: Error inflating class <unknown>
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2331)
              at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2393)
              at android.app.ActivityThread.access$800(ActivityThread.java:151)
              at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1309)
              at android.os.Handler.dispatchMessage(Handler.java:102)
              at android.os.Looper.loop(Looper.java:135)
              at android.app.ActivityThread.main(ActivityThread.java:5351)
              at java.lang.reflect.Method.invoke(Native Method)
              at java.lang.reflect.Method.invoke(Method.java:372)
              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)
              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:703)
              Caused by: android.view.InflateException: Binary XML file line #13: Error inflating class <unknown>
      at android.view.LayoutInflater.createView(LayoutInflater.java:633)
              at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.createCustomViewInternal(CalligraphyLayoutInflater.java:211)
              at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.access$000(CalligraphyLayoutInflater.java:20)
              at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater$PrivateWrapperFactory2.onCreateView(CalligraphyLayoutInflater.java:302)
              at android.view.LayoutInflater$FactoryMerger.onCreateView(LayoutInflater.java:177)
              at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:733)
              at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
              at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
              at uk.co.chrisjenx.calligraphy.CalligraphyLayoutInflater.inflate(CalligraphyLayoutInflater.java:60)
              at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
              at android.support.design.widget.TabLayout$Tab.setCustomView(TabLayout.java:1326)
              at com.my.android.app.view.activity.main.fragment.MainFragment.setupTabLayout(MainFragment.java:277)

【问题讨论】:

    标签: android android-layout android-tablelayout


    【解决方案1】:

    生成 XML

    android:scaleType="fitCenter"

    在 CircleImageView 中被破坏了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-10-11
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      • 2016-07-04
      • 1970-01-01
      • 1970-01-01
      • 2015-07-24
      相关资源
      最近更新 更多