خطا در قرار دادن مقدار match constraint در یک drawer layout و کرش کردن برنامه
سلام. من میخوام که یک drawer layout کل ارتفاع constraint layout رو پر کنه برای همین height رو 0 dip قرار دادم و از match_constrainst استفاده کردم. ولی برنامه کرش می کنه. وقتی مقدار عددی برای height وارد می کنم درست کار می کنه ولی کل ارتفاع constraint layout رو پر نمی کنه. باید چیکار کنم ؟
این کد UI هست :
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
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:id="@+id/constraint_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#fe8aed"
android:orientation="vertical"
tools:context="com.example.amir_.toolbar.MainActivity">
<android.support.v4.widget.DrawerLayout
android:layout_width="320dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0">
<android.support.design.widget.NavigationView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="0dp"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
app:headerLayout="@layout/drawer_header"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0"
app:menu="@menu/appdrawer_actions">
</android.support.design.widget.NavigationView><android.support.constraint.ConstraintLayout/>
این پیام logCat هست.
03-12 14:18:37.847 5700-5700/? I/Zygote: seccomp disabled by setenforce 0
03-12 14:18:37.848 5700-5700/? I/amir_.animatio: Late-enabling -Xcheck:jni
03-12 14:18:37.872 5700-5700/? E/amir_.animatio: Unknown bits set in runtime_flags: 0x8000
03-12 14:18:37.873 5700-5700/? W/amir_.animatio: Unexpected CPU variant for X86 using defaults: x86
03-12 14:18:37.950 5700-5700/com.example.amir_.animation I/amir_.animatio: The ClassLoaderContext is a special shared library.
03-12 14:18:38.073 5700-5700/com.example.amir_.animation W/amir_.animatio: JIT profile information will not be recorded: profile file does not exits.
03-12 14:18:38.075 5700-5700/com.example.amir_.animation I/chatty: uid=10112(com.example.amir_.animation) identical 9 lines
03-12 14:18:38.075 5700-5700/com.example.amir_.animation W/amir_.animatio: JIT profile information will not be recorded: profile file does not exits.
03-12 14:18:38.083 5700-5700/com.example.amir_.animation I/InstantRun: starting instant run server: is main process
03-12 14:18:38.093 5700-5736/com.example.amir_.animation D/libEGL: Emulator has host GPU support, qemu.gles is set to 1.
03-12 14:18:38.100 5700-5736/com.example.amir_.animation D/libEGL: loaded /vendor/lib/egl/libEGL_emulation.so
03-12 14:18:38.102 5700-5736/com.example.amir_.animation D/libEGL: loaded /vendor/lib/egl/libGLESv1_CM_emulation.so
03-12 14:18:38.108 5700-5736/com.example.amir_.animation D/libEGL: loaded /vendor/lib/egl/libGLESv2_emulation.so
03-12 14:18:38.261 5700-5700/com.example.amir_.animation W/amir_.animatio: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
03-12 14:18:38.262 5700-5700/com.example.amir_.animation W/amir_.animatio: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
03-12 14:18:38.529 5700-5700/com.example.amir_.animation D/AndroidRuntime: Shutting down VM
03-12 14:18:38.533 5700-5700/com.example.amir_.animation E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.amir_.animation, PID: 5700
java.lang.IllegalArgumentException: DrawerLayout must be measured with MeasureSpec.EXACTLY.
at android.support.v4.widget.DrawerLayout.onMeasure(DrawerLayout.java:1041)
at android.view.View.measure(View.java:25086)
at android.support.constraint.ConstraintLayout.internalMeasureChildren(ConstraintLayout.java:934)
at android.support.constraint.ConstraintLayout.onMeasure(ConstraintLayout.java:973)
at android.view.View.measure(View.java:25086)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6872)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139)
at android.view.View.measure(View.java:25086)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6872)
at android.support.v7.widget.ActionBarOverlayLayout.onMeasure(ActionBarOverlayLayout.java:391)
at android.view.View.measure(View.java:25086)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6872)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at android.view.View.measure(View.java:25086)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6872)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
at android.view.View.measure(View.java:25086)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6872)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
at com.android.internal.policy.DecorView.onMeasure(DecorView.java:742)
at android.view.View.measure(View.java:25086)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:3083)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1857)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2146)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1745)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7768)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:967)
at android.view.Choreographer.doCallbacks(Choreographer.java:791)
at android.view.Choreographer.doFrame(Choreographer.java:726)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:952)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .