সমন্বয়কারী লেআউট কী?


96

নতুন অ্যান্ড্রয়েড সমর্থন ডিজাইন লাইব্রেরির ডেমো অ্যাপ্লিকেশনটি একবার দেখেছিলেন। এটা তোলে ক্রিস Banes দ্বারা প্রদত্ত হচ্ছে GitHub । অ্যাপ্লিকেশনটি থ্রো করে, ভারী CoordinatorLayoutব্যবহার করা হয়। এছাড়াও, যেমন সমর্থন নকশা গ্রন্থাগার ক্লাস অনেক FloatingActionButton, SnackBar, AppBarLayoutইত্যাদি আচরণ করবে ভিন্নভাবে যখন ব্যবহৃত ভিতরে CoordinatorLayout

কেউ দয়া করে অ্যান্ড্রয়েডের ক্ষেত্রে অন্যগুলির CoordinatorLayoutথেকে কী কী এবং কীভাবে কিছুটা আলোকপাত করতে পারেন ViewGroupবা কমপক্ষে শেখার দিকে সঠিক পথ সরবরাহ করতে পারেন CoordinatorLayout


4
android-developers.blogspot.com/2015/05/… এর জাভাডসগুলিতে বিস্তৃত হলেও বিভ্রান্তিকর বর্ণনা রয়েছে (বর্তমানে সরাসরি লিঙ্কযোগ্য ফর্মটিতে পাওয়া যায় না, তবে আপনি ডেভেলপার.অ্যান্ড্রয়েড .com/প্রিভিউ থেকে একটি জিপ ডাউনলোড করতে পারেন /download.html )।
কমন্সওয়েয়ার

4
আসলে কি সুবিধা ব্যবহার করে CordinatorLayout? এটি অন্যদের উপর কি প্রান্ত আছে?
eRaisedToX

উত্তর:


44

এখানে আপনি খুঁজছেন হয়।

ডক্স থেকে

ডিজাইনের লাইব্রেরিটি পরিচয় করিয়ে দেয় CoordinatorLayout, একটি বিন্যাস যা শিশু দর্শনের মধ্যে স্পর্শ ইভেন্টগুলিতে অতিরিক্ত স্তরের নিয়ন্ত্রণ সরবরাহ করে, যা ডিজাইনের গ্রন্থাগারের অনেকগুলি উপাদান সুবিধা গ্রহণ করে।

https://android-developers.googleblog.com/2015/05/android-design-support-library.html

এই লিঙ্কটিতে আপনি উপরে উল্লিখিত সমস্ত দর্শনগুলির ডেমো ভিডিও দেখতে পাবেন।

আশাকরি এটা সাহায্য করবে :)


4
লিঙ্কটি নষ্ট হয়ে গেছে।
যোগেশ সেরালিয়া

40

সমন্বয়কারী লেআউট কী? অভিনব নামটি আপনাকে বোকা বানাতে দেবেন না, এটি স্টেরয়েডগুলির ফ্রেম লাউট ছাড়া আর কিছু নয়

একটি CoordinatorLayoutকী / কী তা সর্বোত্তমভাবে বোঝার জন্য আপনাকে প্রথমে সমন্বয় বলতে কী বোঝায় তা মনে রাখা উচিত bear

আপনি যদি গুগল শব্দটি

সমন্বয়

এটাই তোমার প্রাপ্য:

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

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

একটি সমন্বয়কারী লেআউট (একটি ভিউগ্রুপ) একটি (̶a̶ ̶c̶o̶m̶p̶l̶e̶̶̶̶̶̶ ̶a̶c̶t̶i̶v̶i̶t̶y̶ ̶o̶r̶ ̶a̶n̶ ̶o̶r̶g̶a̶n̶̶̶̶̶ relationship relationship relationship relationship relationship relationship relationship relationship relationship relationship relationship relationship relationship relationship̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶ into into into̶ into into into into into into into into into into into into into into into into into into into into into̶̶̶̶ into into into into into into into into̶̶̶ into into into into̶ into into into into̶̶̶̶ into into̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶

একটি সমন্বয়কারী লেআউটের সহায়তায়, শিশুদের মতামতগুলি দুর্দান্ত আচরণগুলি যেমন: বাস্তবায়নের জন্য একত্রিত করে একসাথে কাজ করে

ড্র্যাগস, সোয়াইপস, ফ্লিংস বা অন্য কোনও অঙ্গভঙ্গি

কোনও সমন্বয়কারী লেআউটের অভ্যন্তরীণ দৃশ্যগুলি এই আচরণগুলি নির্দিষ্ট করে কার্যকরভাবে কাজ করার জন্য অন্যদের সাথে আলোচনা করে

একটি সমন্বয়কারী লেআউট মেটেরিয়াল ডিজাইনের একটি দুর্দান্ত শীতল বৈশিষ্ট্য যা আকর্ষণীয় এবং সুরেলা লেআউট তৈরি করতে সহায়তা করে।

আপনাকে যা করতে হবে তা হ'ল আপনার সন্তানের দৃষ্টিভঙ্গি সমন্বয়কারী লেআউটের অভ্যন্তরে মোড়ানো।

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout        
 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:fitsSystemWindows="true"
 tools:context="com.byte64.coordinatorlayoutexample.ScollingActivity">

 <android.support.design.widget.AppBarLayout
    android:id="@+id/app_bar"
    android:layout_width="match_parent"
    android:layout_height="@dimen/app_bar_height"
    android:fitsSystemWindows="true"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/toolbar_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        app:contentScrim="?attr/colorPrimary"
        app:layout_scrollFlags="scroll|exitUntilCollapsed">



        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_collapseMode="pin"
            app:popupTheme="@style/AppTheme.PopupOverlay" />
        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>

    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>

<include layout="@layout/content_scolling" />

<android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/fab_margin"
    app:layout_anchor="@id/app_bar"
    app:layout_anchorGravity="bottom|end"
    app:srcCompat="@android:drawable/ic_dialog_email" />

 </android.support.design.widget.CoordinatorLayout>

এবং সামগ্রী_স্ক্রোলিং:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView     
 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"
 app:layout_behavior="@string/appbar_scrolling_view_behavior"
 tools:context="com.byte64.coordinatorlayoutexample.ScollingActivity"
 tools:showIn="@layout/activity_scolling">

 <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/text_margin"
    android:text="@string/large_text" />

 </android.support.v4.widget.NestedScrollView>

এটি আমাদের দেয় যা একটি লেআউট যা সরঞ্জামদণ্ডটি ভেঙে ফ্লোটিংএ্যাকশনবটনটি লুকানোর জন্য স্ক্রোল করা যায় led

খোলা:

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

বন্ধ:

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


4
আপেক্ষিক বা সীমাবদ্ধ বিন্যাসের মধ্যেও দৃষ্টিভঙ্গির মধ্যে সম্পর্ক থাকবে না? যদি কেউ উপরে চলে যায় তবে সম্পর্কিত দর্শনটি উপরে চলে যায়। সমন্বয়কারী কেন ভাল?
সাপ

4
@ স্নাক ১। সমন্বয়কারী লেআউট অন্য দৃষ্টিতে একটি দৃশ্য সাজানোর ক্ষেত্রে সহায়তা করে, যা কনস্ট্রেন্টলয়েট বা রিলেটিভলআউট কিছুই করতে পারে না। ২. এটি মতামতের রূপান্তরকে প্রাণবন্ত করতে সহায়তা করে। একটি ভাল উদাহরণ হ'ল হোয়াটস অ্যাপে "যোগাযোগের সাথে যোগাযোগ করুন" ক্রিয়াকলাপ / টুকরাটি স্থানান্তর।
ফেলিক্স ফেভেন চাইনিমেরেম

13

একটি অতিরিক্ত পয়েন্ট নোট করুন। যেহেতু ওপি বিশেষভাবে জিজ্ঞাসা করেছে

এছাড়াও, অনেকগুলি সাপোর্ট ডিজাইনের লাইব্রেরি ক্লাস যেমন ফ্লোটিংএ্যাকশনবটন, স্নাকবার, অ্যাপবারলআউট ইত্যাদি সমন্বয়কারী লেআউটের অভ্যন্তরে ব্যবহৃত হয় তখন আলাদা আচরণ করে।

এবং আমার ধারণা এটি এর কারণেই।

সমন্বয়কারী লেআউট একটি সুপার-চালিত ফ্রেমলআউট।

এফএবি বাটন, স্নাকবার ফ্রেম লেআউটের ধারণায় কাজ করে এবং যেহেতু সমন্বয়কারী লেআউট নিজেই ফ্রেম-লেআউটের কার্যকারিতা রাখে, এটি অন্যরকম আচরণ করতে অন্য মতামত তৈরি করতে পারে!


9

সমন্বয়কারী লেআউট মূলত ফ্রেম বিন্যাস যা অনেকগুলি ক্ষমতা সহ যা নাম থেকেই স্পষ্টতই বোঝা যায়, এটি তার বাচ্চাদের মধ্যে সমন্বয়টি স্বয়ংক্রিয় করে তোলে এবং সুন্দর দৃষ্টিভঙ্গি তৈরি করতে সহায়তা করে। এর বাস্তবায়নটি গুগল প্লে স্টোর অ্যাপে দেখা যাবে can কীভাবে সরঞ্জামদণ্ডটি ধসে পড়ে এবং রঙ পরিবর্তন করে।

সমন্বয়কারী লেআউট সম্পর্কে সর্বোত্তম জিনিস হ'ল আমরা এর প্রত্যক্ষ বা পরোক্ষ বংশধরদের প্রতি যে আচরণ করি is সমস্ত ইউআই স্ক্রোল করার সময় আপনি অবশ্যই দেখেছেন। এটি সম্ভবত সম্ভবত আচরণটি তার যাদুতে কাজ করে।


7

অ্যান্ড্রয়েড ডকুমেন্টেশনে কী দরকারী তাড়াতাড়ি স্নাপ শট দেওয়ার জন্য :

আপনার দর্শনগুলির আপেক্ষিক আচরণটি নিয়ন্ত্রণ করতে কেবল সমন্বয়কারী লেআউট ব্যবহার করুন,

উদাহরণস্বরূপ যদি আপনি চান আপনার সরঞ্জামদণ্ডটি ধসে পড়ে বা লুকিয়ে আছে। গুগল অ্যাপবারলআউট এবং কলাপসিং টুলবারলআউট প্রবর্তন করে এটি সত্যিই সহজ করে তুলেছে, যা উভয়ই একটি সমন্বয়কারী লেআউটের অধীনে সর্বোত্তমভাবে কাজ করে।

অন্য সর্বাধিক ব্যবহৃত পরিস্থিতি হ'ল যখন আপনি কোনও ফ্লোটিংএ্যাকশনবাটনটি আপনার কলসিংটুলবারের নীচে আটকে থাকতে চান এবং এটির সাথে একটি কো-অর্ডিনেটরের নীচে রেখে app:layout_anchor="@id/YourAppBarId"আঠালো (!) ব্যবহার করেন এবং app:layout_anchorGravity="bottom|end"অবস্থান হিসাবে আপনার অবস্থান দেখার পক্ষে যথেষ্ট হবে ম্যাজিক কাজ!

এই লেআউটটিকে প্রসঙ্গ হিসাবে ব্যবহার করে, শিশু দৃষ্টিভঙ্গির আরও ভাল সহযোগিতা হবে এবং একটি বুদ্ধিমান পদ্ধতিতে আচরণ করবে কারণ তারা সমন্বয়কারী লেআউট প্রসঙ্গে একে অপরকে সচেতন করবে, এর অর্থ আপনার ফ্লোটিংঅ্যাকশন বোতামগুলি আর কোনও স্ন্যাকবার দ্বারা আচ্ছাদিত হবে না etc.

এগুলি সর্বাধিক দরকারী অংশগুলির একটি দ্রুত সংক্ষিপ্তসার ছিল, সুতরাং আপনি যদি আপনার অ্যাপ্লিকেশনটি অ্যানিমেটেড করার জন্য আরও বেশি সময় বাঁচাতে চান তবে বিষয়টিতে সামান্য গভীর ডুব দেওয়া ভাল।

দেখতে গুগল স্ক্রোলিং দৃশ্য কার্যকলাপ টেমপ্লেট


1

একটি বিষয় যা লক্ষণীয় গুরুত্বপূর্ণ তা হ'ল সমন্বয়কারী লেআউটের কোনও ফ্লোটিংএকশন বাটন বা অ্যাপবারআলআউট কাজের কোনও সহজাত বোঝাপড়া নেই - এটি কেবলমাত্র একটি সমন্বয়কারী.বিহেভিয়ার আকারে একটি অতিরিক্ত এপিআই সরবরাহ করে, যা শিশু দৃষ্টিভঙ্গিকে আরও ভালভাবে স্পর্শ ইভেন্ট এবং অঙ্গভঙ্গি নিয়ন্ত্রণ করতে দেয় পাশাপাশি একে অপরের মধ্যে নির্ভরতা ঘোষণা করে ওপেনডেপেন্ডেন্টভিউ চেঞ্জড () এর মাধ্যমে কলব্যাকগুলি পান।

সমন্বয়কারী লেআউট.ডাফল্ট বিহেভিয়ার (আপনার ভিউ.বিভাবার সিগ্লাস) টীকাটি ব্যবহার করে দর্শন একটি ডিফল্ট আচরণ ঘোষণা করতে পারে বা অ্যাপ্লিকেশনটির মাধ্যমে এটি আপনার লেআউট ফাইলগুলিতে সেট করতে পারে: লেআউট_বেহেভিয়ার = "com.example.app. আপনার ভিউ $ আচরণ" বৈশিষ্ট্য। এই কাঠামোটি কোনও দৃষ্টির জন্য সমন্বয়কারী লেআউটের সাথে সংহত করা সম্ভব করে।

এখন পর্যাপ্ত! ডিজাইনের লাইব্রেরি এখন উপলভ্য, সুতরাং এসডিকে ম্যানেজারে অ্যান্ড্রয়েড সমর্থন রেপোজিটরি আপডেট করার বিষয়টি নিশ্চিত করুন। তারপরে আপনি একক নতুন নির্ভরতার সাথে ডিজাইন লাইব্রেরিটি ব্যবহার শুরু করতে পারেন:

'com.android.support:design:22.2.2' সংকলন করুন নোট করুন যে ডিজাইন গ্রন্থাগারটি সমর্থন ভি 4 এবং অ্যাপকম্প্যাট সহায়তা গ্রন্থাগারগুলির উপর নির্ভর করে, আপনি যখন ডিজাইন গ্রন্থাগার নির্ভরতা যুক্ত করবেন তখন সেগুলি স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত হবে। আমরা এও যত্ন নিয়েছিলাম যে এই নতুন উইজেটগুলি অ্যান্ড্রয়েড স্টুডিও লেআউট সম্পাদকের ডিজাইন ভিউতে ব্যবহারযোগ্য (কাস্টমভিউয়ের অধীনে এটি সন্ধান করুন), আপনাকে এই নতুন উপাদানগুলির কয়েকটি প্রাকদর্শন করার সহজ উপায় প্রদান করে।

ডিজাইন গ্রন্থাগার, অ্যাপকম্প্যাট এবং সমস্ত অ্যান্ড্রয়েড সমর্থন লাইব্রেরি স্ক্র্যাচ থেকে সবকিছু না তৈরি করে আধুনিক, দুর্দান্ত দেখাচ্ছে অ্যান্ড্রয়েড অ্যাপ তৈরির জন্য প্রয়োজনীয় বিল্ডিং ব্লক সরবরাহ করার জন্য গুরুত্বপূর্ণ সরঞ্জাম।


0

CoordinatorLayoutএকটি সুপার-চালিত হয়FrameLayout

ডিফল্টরূপে, আপনি যদি একাধিক বাচ্চাকে যুক্ত করেন তবে FrameLayoutতারা একে অপরকে ওভারল্যাপ করে। একজন FrameLayoutপ্রায়শই একটি একক সন্তানের দৃশ্য রাখা ব্যবহার করা উচিত। এর প্রধান আবেদনটি CoordinatorLayoutহ'ল অ্যানিমেশন এবং ট্রানজিশনগুলির সমন্বয় করার ক্ষমতা মধ্যে থাকা ভিউগুলিরকেবলমাত্র এক্সএমএল ব্যবহার করে, আপনি এমন একটি বিন্যাস বর্ণনা করতে পারেন যেখানে কোনও এফএবি একটি আগত স্নাকবারের পথ থেকে সরে যায়, উদাহরণস্বরূপ, বা কোনও এফএবি (বা অন্য কোনও দৃশ্য সত্যই) রয়েছে যা স্পষ্টতই অন্য উইজেটের সাথে সংযুক্ত থাকে এবং স্ক্রিনের সাথে অন স্ক্রিনে চলে যায় উইজেট

এখানে মূল উত্স টিউটোরিয়াল

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