উত্তর:
তারা একই জিনিস (এপিআই লেভেল 8+ এ)। ব্যবহার match_parent
।
FILL_PARENT (এপিআই লেভেল 8 এবং উচ্চতরতে MATCH_PARENT নামকরণ করা হয়েছে) যার অর্থ ভিউটি তার পিতামাতার মতো বড় হতে চায় (মাইনাস প্যাডিং)
...
fill_parent
: ভিউটি তার পিতামাতার মতো (মাইনাস প্যাডিং) বড় হওয়া উচিত। এই ধ্রুবকটি API স্তর 8 থেকে শুরু করে অবহেলা করা হয় এবং এর দ্বারা প্রতিস্থাপিত হয়match_parent
।
http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html
-1
। আমি আপনাকে এটি সম্পর্কে আরও ভাল বোধ করছি, আমি এটির মধ্যেও কোনও লাভ করব না ... :-)
-1
। আপনি ত্রুটি পেয়েছেন কারণ পুরানো প্ল্যাটফর্মটি একই ধ্রুবকের নতুন নাম সম্পর্কে জানে না।
বিভ্রান্তি এড়াতে গুগল নাম পরিবর্তন করেছে।
পুরানো নামটির সাথে সমস্যাটি fill parent
হ'ল এটি এর দ্বারা পিতামাতার মাত্রাগুলিকে প্রভাবিত করে, match parent
ফলাফলের আচরণটি আরও ভালভাবে বর্ণনা করে - পিতামাতার সাথে মাত্রাটি মেলে।
উভয় ধ্রুবক -1
শেষ পর্যন্ত সংশোধন করে এবং তাই অ্যাপ্লিকেশনটিতে অভিন্ন আচরণের ফলস্বরূপ। হাস্যকরভাবে যথেষ্ট, বিষয়গুলি স্পষ্ট করতে এই নাম পরিবর্তনটি এটিকে অপসারণের পরিবর্তে বিভ্রান্তি যোগ করেছে বলে মনে হয়।
কার্যকরীভাবে কোনও পার্থক্য নেই, গুগল এপিআই স্তর 8 (অ্যান্ড্রয়েড 2.2) থেকে সবেমাত্র নাম_পরিবার থেকে ম্যাচ_পিতা থেকে পরিবর্তন করেছে। সামঞ্জস্যের কারণে FILL_PARENT এখনও উপলব্ধ।
LayoutParams.FILL_PARENT
এবং LayoutParams.MATCH_PARENT
উভয়ের মান -1 হয়। ফিল প্যারেন্ট থেকে ম্যাচ প্যারেন্টে পরিবর্তিত হওয়ার জন্য গুগল কী প্ররোচিত হয়েছে তা নিশ্চিত নন :)
যেহেতু বেশিরভাগ phones are >= Android 2.2
.. আপনার ভবিষ্যতের সামঞ্জস্যের জন্য ম্যাচ প্যারেন্ট ব্যবহার করা উচিত ... নিশ্চিত হন না যে তারা পুরানো ফিল প্যারেন্ট ধ্রুবকটি কখন বন্ধ করবেন!
সামঞ্জস্যের জন্য, ভরাট_পিতা বা তার সাথে আটকে থাকা আরও ভাল, যেমন, API 8 ডিভাইসের নীচে সমর্থন করার সময়। তবে যদি আপনার অ্যাপ্লিকেশনটি 8 এবং তারপরের দিকে API টি টার্গেট করে তবে আপনার পরিবর্তে ম্যাচ_পিতা ব্যবহার করা উচিত।
FILL_PARENT
অবচয় হয় (উপরের ম্যাট বল দ্বারা উল্লিখিত), তবে ফরওয়ার্ড সামঞ্জস্যের একমাত্র বিকল্প MATCH_PARENT
।
FILL_PARENT
এপিআই লেভেল 8 এ MATCH_PARENT
অবমূল্যায়ন করা হয়েছে এবং উচ্চতর স্তরের এপিআই ব্যবহার করুন
এটির প্রকৃত ক্রিয়াটির কাছাকাছি একটি নাম দেওয়ার জন্য । "fill_parent"
নামটি ইঙ্গিত হিসাবে অবশিষ্ট স্থানটি পূরণ করে না (এর জন্য আপনি ওজন বৈশিষ্ট্যটি ব্যবহার করেন)। পরিবর্তে, এটি এর লেআউট পিতা-মাতার যতটা জায়গা নেয়। এজন্যই নতুন নাম"match_parent"
উভয়ের একই কার্যকারিতা কেবলমাত্র পার্থক্য হ'ল ফিলিং-প্যারেন্টটি এপিআই লেভেল 8 পর্যন্ত ব্যবহৃত হয় এবং ম্যাচ_প্যারেন্টটি এপিআই স্তর 8 বা উচ্চতর স্তরের পরে ব্যবহৃত হয়।
আপনি লেআউট সেট যখন width
এবং height
যেমন match_parent
মধ্যে XML
সম্পত্তি, এটি সম্পূর্ণ এলাকায় পিতা বা মাতা দৃশ্য আছে যে ব্যাপৃত হবে অর্থাৎ এটা পিতা বা মাতা হিসাবে হিসাবে বড় হতে হবে।
<LinearLayout
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#f9b0b0">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#b0f9dc"/>
</LinearLayout>
হরে পিতামাতা লাল এবং শিশু সবুজ। শিশুরা সমস্ত অঞ্চল দখল করে। কারণ এটি width
এবং height
আছে match_parent
।
দ্রষ্টব্য: পিতামাতার যদি কোনও প্যাডিং প্রয়োগ করা হয় তবে সেই স্থানটি অন্তর্ভুক্ত করা হবে না।
<LinearLayout
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#f9b0b0"
android:paddingTop="20dp"
android:paddingBottom="10dp">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#b0f9dc"/>
</LinearLayout>
সুতরাং টেক্সটভিউ hight = 300dp (প্যারেন্ট হাইট) - (20 (প্যাডিংটপ) +10 (প্যাডিংবটম)) = (300 - 30) ডিপি = 270 ডিপি
fill_parent
এর পূর্বের নাম match_parent
এপিআই লেভেল 8 এবং এর জন্য উচ্চতর fill_parent
নামকরণ হয়েছে match_parent
এবং fill_parent
এখন হ্রাস করা হয়েছে।
সুতরাং fill_parent
এবং match_parent
একই।
ভিউটি তার পিতামাতার মতো (মাইনাস প্যাডিং) বড় হওয়া উচিত। এই ধ্রুবকটি API স্তর 8 থেকে শুরু করে অবহেলা করা হয় এবং replaced @ কোড ম্যাচ_পিতা} দ্বারা প্রতিস্থাপিত হয়}
ম্যাচ প্যারেন্ট, যার অর্থ ভিউটি তার পিতামাতার মতো বড় হতে চায় (মাইনাস প্যাডিং)।
র্যাপ_কন্টেন্ট, যার অর্থ ভিউটি কেবলমাত্র তার সামগ্রীটি আবদ্ধ করার জন্য যথেষ্ট বড় হতে চায় (প্লাস প্যাডিং)
আরও ভাল উদাহরণের জন্য, আমি একটি নমুনা বিন্যাস তৈরি করেছি যা এই ধারণাটি প্রদর্শন করে। এর প্রভাব দেখতে, আমি প্রতিটি পাঠ্য ভিউ সামগ্রীর সীমানা যুক্ত করেছি।
"প্যারেন্টের সাথে ম্যাচ করুন" টেক্সটভিউ কন্টেন্টে আমরা দেখতে পাচ্ছি যে এটির লেআউট প্রস্থটি পুরো প্যারেন্টের বাইরে ছড়িয়ে রয়েছে।
তবে আমরা "মোড়ানো বিষয়বস্তু" পাঠ্য ভিউ সামগ্রীতে দেখতে পাচ্ছি, এটির লেআউটের প্রস্থটি এর সামগ্রীতে (মোড়ানো বিষয়বস্তু) দৈর্ঘ্যে আবৃত আছে।
match_parent
এবং fill_parent
একই সম্পত্তি, অনুভূমিকভাবে বা উল্লম্বভাবে সম্পূর্ণ স্ক্রিনে কোনও দৃশ্যের প্রস্থ বা উচ্চতা নির্ধারণ করতে ব্যবহৃত হয়।
এই বৈশিষ্ট্যগুলি এর মতো অ্যান্ড্রয়েড এক্সএমএল ফাইলগুলিতে ব্যবহৃত হয়।
android:layout_width="match_parent"
android:layout_height="fill_parent"
অথবা
android:layout_width="fill_parent"
android:layout_height="match_parent"
fill_parent
পূর্ববর্তী সংস্করণগুলিতে ব্যবহৃত হয়েছিল, তবে এখন এটি হ্রাস ও প্রতিস্থাপন করা হয়েছে match_parent
। আমি আশা করি এটি আপনাকে সাহায্য করবে
ভরা_পিতা: ভিউটি তার পিতামাতার মতো বড় হওয়া উচিত।
এখন এই বিষয়বস্তু পূরণ_পিত্তিকে অবচয় এবং ম্যাচ_পিতা দ্বারা প্রতিস্থাপন করা হয়েছে।
FILL_PARENT এপিআই লেভেল 8 এবং উচ্চতরতে MATCH_PARENT নামকরণ করা হয়েছে যার অর্থ ভিউটি তার পিতামাতার মতো বড় হতে চায় (মাইনাস প্যাডিং) - গুগল
FILL_PARENT
এপিআই স্তর 8 এবং উচ্চতর থেকে হ্রাস করা হয় এবং এটি উপরের সংস্করণগুলির হিসাবে নামকরণ করা হয় MATCH_PARENT
উভয় একই FILL_PARENT
এবং MATCH_PARENT
, FILL_PARENT
এপিআই স্তর 8 এবং MATCH_PATENT কম সংস্করণ কম ক্ষেত্রে ব্যবহার করা হয়েছিল 8 বেশী এপিআই স্তর বৃহত্তর ব্যবহার করা হয়।
FILL_PARENT
( MATCH_PARENT
এপিআই লেভেল 8 এবং উচ্চতর নামকরণ করা হয়েছে) যার অর্থ ভিউটি তার পিতামাতার মতো বড় হতে চায় (মাইনাস প্যাডিং)
fill_parent
: ভিউটি তার পিতামাতার মতো (মাইনাস প্যাডিং) বড় হওয়া উচিত। এই ধ্রুবকটি API স্তর 8 থেকে শুরু করে অবহেলা করা হয় এবং এর দ্বারা প্রতিস্থাপিত হয় match_parent
।
আরও তথ্যের জন্য দয়া করে এই পৃষ্ঠাটি দেখুন
1. ম্যাচ_পিতা
আপনি যখন লেআউটের প্রস্থ এবং উচ্চতাটি ম্যাচ_পিতা হিসাবে সেট করবেন, তখন এটি পিতামাতার ভিউর সম্পূর্ণ অঞ্চল দখল করবে, অর্থাৎ এটি পিতামাতার মতো বৃহত্তর হবে।
দ্রষ্টব্য : পিতামাতার যদি কোনও প্যাডিং প্রয়োগ করা হয় তবে সেই স্থানটি অন্তর্ভুক্ত করা হবে না।
যখন আমরা ডিফল্টরূপে একটি লেআউট.এক্সএমএল তৈরি করি তখন অ্যান্ড্রয়েড: লেআউট_উইথ = "ম্যাচ_প্যারেন্ট" এবং অ্যান্ড্রয়েডের সাথে দেখুন: লেআউট_উইথ = "ম্যাচ_প্যারেন্ট" অর্থাত্ এটি মোবাইল স্ক্রিনের সম্পূর্ণ প্রস্থ এবং উচ্চতা দখল করে।
এছাড়াও নোট করুন যে প্যাডিং সমস্ত পক্ষেই প্রয়োগ করা হয়েছে,
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
এখন একটি উপ-ভিউ লিনিয়ারলআউট যুক্ত করতে দিন এবং এর লেআউট_উইথ = "ম্যাচ_প্যারেন্ট" এবং লেআউট_ উচ্চতা = "ম্যাচ_পিতা" সেট করুন, গ্রাফিকাল ভিউতে এরকম কিছু প্রদর্শিত হবে,
match_parent_example
কোড
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.code2care.android.togglebuttonexample.MainActivity" >
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="11dp"
android:background="#FFFFEE"
android:orientation="vertical" >
2. পূরণ_পিতা:
এটি ম্যাচ_পিতা হিসাবে সমান, ফিল_প্যারেন্টকে এপিআই লেভেল ৮ এ অবমূল্যায়ন করা হয়েছিল। সুতরাং আপনি যদি API এর 8 স্তর বা তার বেশি ব্যবহার করে থাকেন তবে অবশ্যই আপনাকে ফিল_প্যারেন্ট ব্যবহার এড়াতে হবে
আমরা ম্যাচ-প্যারেন্টের মতো একই পদক্ষেপগুলি অনুসরণ করি, তার পরিবর্তে সর্বত্র ফিল_প্যারেন্ট ব্যবহার করুন।
আপনি দেখতে পাবেন যে ফিল_প্যারেন্ট এবং ম্যাচ পিতা বা মাতা উভয়ের মধ্যে আচরণের মধ্যে কোনও পার্থক্য নেই।