রেন্ডারিংয়ের সময় ব্যতিক্রম উত্থাপিত হয়েছে: মোড 0 সনাক্ত করতে অক্ষম


91

BuildTools25.0.0 সংস্করণে আপডেট হওয়ার পরে ।

compileSdkVersion 25
buildToolsVersion "25"

অ্যান্ড্রয়েড লেআউট পূর্বরূপ নিয়ে আমার সমস্যা আছে। এখন এটি ত্রুটি দেখায়:

রেন্ডারিংয়ের সময় ব্যতিক্রম উত্থাপিত হয়েছে: মোড 0 সনাক্ত করতে অক্ষম

এখানে চিত্র বর্ণনা লিখুন

আমি প্রকল্পটি পরিষ্কার ও পুনর্নির্মাণের চেষ্টা করেছি, তবে এটি কার্যকর হয় না। আপডেটের আগে সবকিছু ভাল ছিল।

আমি জানি যে আমি আগের সংস্করণগুলিতে ফিরে যেতে পারি BuildTools, তবে আমি এটি জানতে চাই কেন এটি সংস্করণে কাজ করে না 25.0.0?


দেখে মনে হচ্ছে এটির একটি সমস্যা RecyclerView

java.lang.IllegalStateException: Unable to locate mode 0
at android.view.DisplayInfo.findMode(DisplayInfo.java:458)
at android.view.DisplayInfo.getMode(DisplayInfo.java:445)
at android.view.Display.getRefreshRate(Display.java:648)
at android.support.v7.widget.RecyclerView.onAttachedToWindow(RecyclerView.java:2392)
at android.view.View.dispatchAttachedToWindow(View.java:15392)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2953)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2960)
at android.view.AttachInfo_Accessor.setAttachInfo(AttachInfo_Accessor.java:42)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:333)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:429)
at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:389)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:548)
at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:533)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:966)
at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:533)
at com.android.tools.idea.rendering.RenderTask.lambda$inflate$53(RenderTask.java:659)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

15
25.0.0 সহ একটি বাগের মতো দেখায়। আমি এটির জন্য একটি সমস্যা খুলেছি: কোড. google.com/p/android/issues/…
জিম পেকেরেক

4
আমি একই সমস্যাটি সংকলিতএসডিভিভার্সন ২৪ / বিল্টটুলস ভার্সন "২৪.০.২" দিয়ে পেয়েছি - তবে আমি গতকাল অ্যান্ড্রয়েড স্টুডিওকে একটি আপডেট করতে (বিভিন্ন বিষয়, মূলত এটি যা আপডেট করতে বলেছিল) করতে দিয়েছি, এবং আমি বিশ্বাস করি যে এটি পরে ভেঙে গেছে।
স্টিভেন ক্র্যাফট

4
@HenriquedeSousa সমস্যা উদ্ভূত যখন en.wikipedia.org/wiki/Andy_Rubin #google বাম
IntelliJ অমিয়

উত্তর:


111

এই সমস্যাটি সমাধান হয়ে গেছে, এতে সমর্থন লাইব্রেরি আপডেট করুন

compile 'com.android.support:recyclerview-v7:25.0.1'
compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:25.0.1'

62

এটি সংস্করণ 25 এর একটি বিরক্তিকর বাগ .. একটি অস্থায়ী সমাধান হ'ল আপনার প্রকল্পটি ডাউনগ্রেড করা,

 compile 'com.android.support:appcompat-v7:24.2.1'
 compile 'com.android.support:design:24.2.1'
 compile 'com.android.support:recyclerview-v7:24.2.1'

18

আর একটি অস্থায়ী সমাধান হ'ল প্রতিস্থাপন <android.support.v7.widget.RecyclerViewকরা <RecyclerViewযাতে আপনি রেন্ডার ভিউটি দেখতে পারেন। সংকলন করার সময়, এটিতে আবার পরিবর্তন করুন<android.support.v7.widget.RecyclerView


7

অ্যান্ড্রয়েড সমর্থন লাইব্রেরি পশ্চাদপটে সামঞ্জস্যপূর্ণ ইউটিলিটি ফাংশন সরবরাহ করে। অ্যাপ্লিকেশনগুলি এই ইউটিলিটি ফাংশনগুলি ব্যবহার করতে পারে বিস্তৃত অ্যান্ড্রয়েড সিস্টেম সংস্করণ জুড়ে উপযুক্ত ব্যবহারকারীর অভিজ্ঞতা সরবরাহ করতে।

এটি একটি বাগ সমস্যা এবং ভবিষ্যতে সমর্থন-ডিজাইন লাইব্রেরি প্রকাশের সময় ঠিক করা উচিত ।

অস্থায়ী সমাধানের জন্য আপনার সংস্করণটি ডাউনগ্রেড করা উচিত ।

compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:v7:25.0.1' 
compile 'com.android.support:recyclerview-v7:25.0.1' 

6

পূর্বরূপ দেখতে আমি এই কৌশলটি ব্যবহার করি ..... app:layoutManager="0"একটি লেআউট এক্সএমএলটিতে পুনর্ব্যবহারযোগ্য ভিউয়ের জন্য যুক্ত করুন

তবে এটি রান সময়ে ইনফলেটএক্সসেপশন নিক্ষেপ করবে। সুতরাং অ্যাপটি চালানোর আগে এই সম্পত্তিটি এক্সএমএল লেআউট ফাইল থেকে সরান !


4

অস্থায়ী সমাধান হিসাবে আপনি পুনর্ব্যবহারযোগ্য ভিউয়ের শিশু শ্রেণি তৈরি করতে পারেন এবং নীচে কেবলমাত্র অ্যাটচড টু উইন্ডোতে ওভাররাইড করতে পারেন। তারপরে আপনার এক্সএমএল লেআউটে এই শ্রেণিটি ব্যবহার করুন

@Override
protected void onAttachedToWindow() {
    if (!isInEditMode()) {
        super.onAttachedToWindow();
    }
}

আপডেট: 25.0.1 সমর্থন লাইব্রেরি থেকে শুরু করে, ইতিমধ্যে লাইব্রেরিতে অন্তর্ভুক্ত করা ঠিক করুন এবং ইস্যুটির আর অস্তিত্ব নেই

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.