2016-08-16 26 views
4

携帯電話ではなくタブレットでアプリケーションを実行しているときに、私は特定のアクティビティを開始するときにこのスタックトレースを取得します。私はそのアクティビティの.xmlファイルを調べ、実行時に0になる可能性のあるものを探し出し、気になるもの(たとえば?attr/actionBarSizeのようなもの)をすべて置き換えましたが、何も変更されませんでした。私の最大の問題:スタックトレースが長すぎて、例外の起点に到達できません。どのように私の間違いを見つけることができる任意のアイデア? PS:私はそれがさらに混乱まあIllegalArgumentException:アクティビティで幅と高さが> 0である必要があります

java.lang.IllegalArgumentException: width and height must be > 0                   
    at android.graphics.Bitmap.createBitmap(Bitmap.java:933)                   
    at android.graphics.Bitmap.createBitmap(Bitmap.java:912)                   
    at android.graphics.Bitmap.createBitmap(Bitmap.java:879)                  
    at android.graphics.drawable.VectorDrawable$VectorDrawableState.createCachedBitmapIfNeeded(VectorDrawable.java:711) 
    at android.graphics.drawable.VectorDrawable.draw(VectorDrawable.java:278) 
    at android.graphics.drawable.DrawableContainer.draw(DrawableContainer.java:76) 
    at android.widget.ExpandableListView.dispatchDraw(ExpandableListView.java:460) 
    at android.view.View.draw(View.java:16272) 
    at android.widget.AbsListView.draw(AbsListView.java:5983) 
    at android.view.View.updateDisplayListIfDirty(View.java:15192) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.draw(View.java:16272) 
    at android.view.View.updateDisplayListIfDirty(View.java:15192) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.support.design.widget.CoordinatorLayout.drawChild(CoordinatorLayout.java:1127) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.updateDisplayListIfDirty(View.java:15187) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.support.v4.widget.DrawerLayout.drawChild(DrawerLayout.java:1369) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.draw(View.java:16272) 
    at android.view.View.updateDisplayListIfDirty(View.java:15192) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.updateDisplayListIfDirty(View.java:15187) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.updateDisplayListIfDirty(View.java:15187) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.updateDisplayListIfDirty(View.java:15187) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.updateDisplayListIfDirty(View.java:15187) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.View.draw(View.java:15990) 
    at android.view.ViewGroup.drawChild(ViewGroup.java:3708) 
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3502) 
    at android.view.View.draw(View.java:16272) 
    at android.widget.FrameLayout.draw(FrameLayout.java:592) 
    at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:3047) 
    at android.view.View.updateDisplayListIfDirty(View.java:15192) 
    at android.view.View.getDisplayList(View.java:15215) 
    at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:307) 
    at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:313) 
    at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:352) 
    at android.view.ViewRootImpl.draw(ViewRootImpl.java:2815) 
    at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2638) 
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2226) 
    at android.view.ViewRootImpl.doTraversal(ViewRootIm 

作るという活動の任意のビットマップ、の知っている、とここでのGradleからの私depenenciesありませんが、私は今24のサポートライブラリが、エラーを使用しています

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    wearApp project(':wear') 
    testCompile 'junit:junit:4.12' 
    compile 'com.google.android.gms:play-services:9.4.0' 
    compile 'org.postgresql:postgresql:9.4.1208.jre7' 
    compile 'com.google.android.gms:play-services-ads:9.4.0' 
    compile 'com.google.android.gms:play-services-identity:9.4.0' 
    compile 'com.google.android.gms:play-services-gcm:9.4.0' 
    compile 'com.android.support:multidex:1.0.0' 
    compile 'com.google.android.support:wearable:1.4.0' 
    compile 'com.google.firebase:firebase-core:9.4.0' 
    compile 'com.google.firebase:firebase-crash:9.4.0' 
    compile 'com.google.firebase:firebase-messaging:9.4.0' 
    compile 'com.android.support:support-v4:24.2.1' 
    compile 'com.android.support:recyclerview-v7:24.2.1' 
    compile 'com.android.support:design:24.2.1' 
    compile 'com.android.support:palette-v7:24.2.1' 
} 

そして、ここでは、クラッシュした活動の.xmlコードを付属しています...持続:あなたはサポートライブラリを使用している可能性があるよう

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@color/colorPrimary" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context="org.pbdevelopement.cineapp.SpielplanActivity" 
    tools:showIn="@layout/app_bar_spielplan"> 

    <ExpandableListView 
     android:id="@+id/spielplan_list_view" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:divider="@color/Grey600" 
     android:dividerHeight="1dp" 
     android:groupIndicator="@drawable/group_selector_icon" 
     android:layout_alignParentStart="true" 
     android:layout_alignParentTop="true" /> 
</RelativeLayout> 
+1

レイアウトXMLとアクティビティコードを投稿できますか? –

+0

@MobileDeveloperがxmlを追加しました。興味のあるアクティビティコードの部分は何ですか?それはかなり束です.... – Maverick283

答えて

3

ですね?以前の&以降のバージョンのサポートライブラリには存在しない23.4.0のDrawableCompat.wrap()のバグにも同じエラーがありました。このバグは描画可能な境界を0(または挿入図形の場合は負)に間違って設定します。私はこれがAndroid 5.1でクラッシュするのを見た。

DrawableWrapperDonut/DrawableWrapperGingerbreadのコードを見てもわかりませんが、問題が23.4.0以降で修正されていることがわかりました。バグのあるバージョンを使用していた場合は、良いバージョンに切り替えると、このクラッシュが修正されるはずです。

+1

ありがとう、それは理由かもしれません。残念ながら、私はもうタブレットの所有権を得ることはできませんが、私はそれを試してみてください...今のあなたのポイントを集める;) – Maverick283

+0

まあ、これは原因ではなかった:/私の質問は、 Android Studioでは、まだ23でターゲット設定しているときに24バージョンを使用するのが悪いと思うのですが...それは問題ですか? – Maverick283

+0

あなたはやや正しいですが、それだけですロリポップで起こって、kitkatとマシュマロでうまくいきます... – Maverick283

関連する問題