অ্যান্ড্রয়েড লেআউট ফাইলগুলিতে "সরঞ্জামগুলি: প্রসঙ্গ" কী?


935

এডিটি-র সাম্প্রতিক নতুন সংস্করণ দিয়ে শুরু করে, আমি লেআউট এক্সএমএল ফাইলগুলিতে এই নতুন বৈশিষ্ট্যটি লক্ষ্য করেছি, উদাহরণস্বরূপ:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    tools:context=".MainActivity" />

"সরঞ্জামসমূহ: প্রসঙ্গ" কী জন্য ব্যবহৃত হয়?

কীভাবে এটি সেখানে লিখিত কার্যকলাপের সঠিক পথটি কীভাবে জানতে পারে? এটি কি ম্যানিফেস্টের ভিতরে অ্যাপ্লিকেশনটির প্যাকেজটির দিকে তাকাবে?

এটা কি প্রাসঙ্গিক বা কেবল ক্রিয়াকলাপগুলিতে প্রসারিত ক্লাসগুলির মধ্যে সীমাবদ্ধ? এটি কি তালিকাভিত্তিক আইটেমগুলির জন্য ব্যবহারযোগ্য?


হ্যাঁ, আমি বিস্মিত হয়েছি যে আমি কী মিস করেছি ("কী নতুন" বিভাগে তা না দেখে) যেহেতু আমি সর্বদা সর্বশেষতম অ্যাডটি & এসডিকে সংস্করণগুলি (বর্তমানে অ্যাডটি & এসডিকে ২০ টি পূর্বরূপ 3 ব্যবহার করছি) ইনস্টল করি।
অ্যান্ড্রয়েড বিকাশকারী

9
এছাড়াও, সরকারী দস্তাবেজগুলি এখানে দেখুন: < সরঞ্জাম . android.com/tech-docs/tools-attributes#TOC-tools:context >।
MDTech.us_MAN

2
আমার অ্যাপ্লিকেশনটি এখনও প্রসঙ্গ ছাড়াই কাজ করে।
সর্বাধিক শ্রদ্ধেয় স্যার

1
@ ব্যবহারকারী 132522 আইডিইতে এটি সমস্ত বিকাশের বিষয় development অ্যাপটি চালানোর জন্য নয়
অ্যান্ড্রয়েড বিকাশকারী

এই সম্পর্কে কি? stackoverflow.com/questions/41779742/...

উত্তর:


438

এটি আপনার ক্রিয়াকলাপের পূর্বরূপটি রেন্ডার করতে সরঞ্জামগুলি ইউআই সম্পাদক ব্যবহার করে। এটি এখানে নথিভুক্ত করা হয় :

এই বৈশিষ্ট্যটি ঘোষণা করে যে এই ক্রিয়াকলাপটি ডিফল্টরূপে জড়িত activity এটি সম্পাদক বা লেআউট পূর্বরূপের বৈশিষ্ট্যগুলিকে সক্ষম করে যা ক্রিয়াকলাপের জ্ঞান প্রয়োজন যেমন লেআউট থিমটি পূর্বরূপে কী হওয়া উচিত এবং যখন আপনি একটি কুইকফিক্স থেকে এটি তৈরি করেন তখন অন ক্লিক ক্লিক করুন হ্যান্ডলারগুলি


আমি দেখি . এখানে স্ক্রিনশট অনুসারে: সরঞ্জাম.অ্যান্ড্রয়েড.com / _ / rsrc / 1337185954574 / recent / newconfigchooser/… , এর অর্থ এই যে প্রাসঙ্গিক প্রসারিত কোন শ্রেণি হতে হবে না, তাই না? যদি তা হয় তবে আমি মনে করি এটি আপনি যা বলছেন তা আরও বেশি করে, যদিও আমি নিশ্চিত না।
অ্যান্ড্রয়েড বিকাশকারী

2
Activityপ্রসারিত Context, তাই নিশ্চিত আপনি কি বলতে চাইছেন না? এটি সম্ভবত আরও কাজ করছে, আপনি যদি আগ্রহী হন তবে উত্স কোডটি পরীক্ষা করুন, এটি উপলব্ধ। আমি কোন বিবরণ জানি না।
নিকোলে এলেনকভ

উফ! আমি স্ক্রিনশটের লেখাটি সঠিকভাবে পড়িনি .সরি। আমি যা দেখিয়েছি তা নিয়ে ঘোরাফেরা করার সময়, এটি আরও বলে যে এটি একটি খণ্ড হতে পারে, তবে খণ্ডগুলিতে তাদের থিমটি কোথাও লেখা নেই, না? যাইহোক, আমি এখনও নিশ্চিত নই যে এই নতুন বৈশিষ্ট্যটি কী। নতুন গুগল আইও এই সম্পর্কে বলবে কিনা তা অবাক করে।
অ্যান্ড্রয়েড বিকাশকারী

25
তারা একটি নতুন ভিডিও তৈরি করেছে যা এই বৈশিষ্ট্যগুলি দেখায়: youtube.com/…
অ্যান্ড্রয়েড বিকাশকারী 21


379

এই বৈশিষ্ট্যটি মূলত বিন্যাসের উপরে "সহযোগী ক্রিয়াকলাপ" নির্বাচনের জন্য অধ্যবসায়। রানটাইম এ, একটি লেআউট সর্বদা একটি ক্রিয়াকলাপের সাথে যুক্ত থাকে। এটি অবশ্যই একাধিকের সাথে যুক্ত হতে পারে তবে কমপক্ষে একটির সাথে। সরঞ্জামটিতে, আমাদের এই ম্যাপিংটি সম্পর্কে জানতে হবে (যা রানটাইমের সময় অন্য দিকে ঘটে; কোনও বৈশিষ্ট্য নির্দিষ্ট বৈশিষ্ট্যগুলি চালনা করার জন্য একটি লেআউট প্রদর্শন করতে সেটকাউন্টটভিউ (লেআউট) কল করতে পারে)।

এই মুহুর্তে, আমরা এটি কেবল একটি জিনিসের জন্য ব্যবহার করছি: একটি বিন্যাসের জন্য প্রদর্শিত সঠিক থিম বাছাই (যেহেতু ম্যানিফেস্ট ফাইলটি কোনও ক্রিয়াকলাপের জন্য থিমগুলি নিবন্ধভুক্ত করতে পারে এবং আমরা যখন লেআউটটির সাথে সম্পর্কিত ক্রিয়াকলাপটি জানতে পারি, আমরা বেছে নিতে পারি বিন্যাসের জন্য প্রদর্শিত সঠিক থিম)। ভবিষ্যতে, আমরা এটি অতিরিক্ত বৈশিষ্ট্যগুলি চালিত করতে ব্যবহার করব - যেমন অ্যাকশন বারটি সরবরাহ করা (যা ক্রিয়াকলাপের সাথে সম্পর্কিত), অন ক্লিক হ্যান্ডলার যুক্ত করার জায়গা ইত্যাদি etc.

এটি কোনও সরঞ্জামগুলির কারণ: নেমস্পেসের বৈশিষ্ট্যটি হ'ল এটি কেবলমাত্র সরঞ্জামটি ব্যবহারের জন্য ডিজাইনের সময় ম্যাপিং। লেআউটটি নিজেই একাধিক ক্রিয়াকলাপ / টুকরা ইত্যাদির সাহায্যে ব্যবহার করা যেতে পারে just আপনি যে কোনও সময় এটি পরিবর্তন করতে পারবেন, ঠিক তেমনি আপনি আমাদের তালিকাভিউ এবং খণ্ডের বাইন্ডিং ইত্যাদি পরিবর্তন করতে পারেন

(এখানে পূর্ণ changeset যার উপর আরো বিস্তারিত জানার গেছে এই )

এবং হ্যাঁ, উপরে তালিকাভুক্ত লিঙ্ক নিকোলে দেখায় যে নতুন কনফিগারেশন চয়নকারীটি কীভাবে কাজ করছে এবং কীভাবে কাজ করে

আরও একটি জিনিস: "সরঞ্জাম" নামের স্থানটি বিশেষ। অ্যান্ড্রয়েড প্যাকেজিং সরঞ্জাম এটিকে অগ্রাহ্য করতে জানে, সুতরাং এই বৈশিষ্ট্যগুলির কোনওটিই APK এ প্যাকেজ করা হবে না। আমরা এটি বিন্যাসে অতিরিক্ত মেটাডেটার জন্য ব্যবহার করছি। এটি এমন যেখানে উদাহরণস্বরূপ লিন্টের সতর্কতাগুলি দমন করার বৈশিষ্ট্যগুলি সংরক্ষণ করা হয় - সরঞ্জাম হিসাবে: উপেক্ষা করুন।


যদি এর কোনও বেস প্যাকেজ না থাকে তবে কীভাবে এটি কার্যকলাপের পুরো পথটি জানতে পারে? এটা ম্যানিফেস্ট ফাইল তাকান না?
অ্যান্ড্রয়েড বিকাশকারী

2
হ্যাঁ, এটি এটি ম্যানিফেস্ট ফাইলে ক্রিয়াকলাপ নিবন্ধগুলির মতো একইভাবে চিকিত্সা করছে, যেখানে আপনি নামের বৈশিষ্ট্যে প্যাকেজটি বাদ দিতে পারেন। এটি ম্যানিফেস্ট ফাইলের মূল উপাদান থেকে প্যাকেজ ঘোষণাকে প্রেন্ডস করে, যদি প্রয়োজন হয়।
টর নরবাই

সুন্দর এই সমস্ত (এবং আরও) গুগল আইও 2012 তে প্রদর্শিত হবে? আমি নতুন বৈশিষ্ট্য সম্পর্কে শুনতে অপেক্ষা করতে পারি না। :)
অ্যান্ড্রয়েড বিকাশকারী

1
একটি নতুন প্রকল্পের জন্য উত্পন্ন এক্সএমএলে এটি ক্ষেত্রের tools:contextউপর মূল্য রাখে TextView। পুরো লেআউটে কোনও থিম প্রয়োগ করতে এটি কোনও বিশ্বব্যাপী ব্যবহারের মতো বলে মনে হচ্ছে, কেন এটি মূল বিন্যাসে রাখা হয়নি?
জেসন রবিনসন

3
আমি একটি দস্তাবেজ যুক্ত করেছি যা আমাদের বর্তমান সরঞ্জামগুলির বৈশিষ্ট্যগুলি ডকুমেন্ট করেছে: সরঞ্জাম. android.com/tech-docs/tools-attributes
Tor Norbye

92

মতে অ্যান্ড্রয়েড সরঞ্জামসমূহ প্রকল্প সাইট :

সরঞ্জাম: প্রসঙ্গ

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

<android.support.v7.widget.GridLayout
    xmlns:android="http://schemas.android.com/apk/res/android"    
    xmlns:tools="http://schemas.android.com/tools"
    tools:context=".MainActivity">  

দ্বারা ব্যবহৃত: স্টুডিও এবং ইক্লিপস, লিন্টের লেআউট সম্পাদক


14

1.Description

tools: context = "activity name"এটি আপনার বর্তমান লেআউট ফাইল সেটে রেন্ডারিং প্রসঙ্গে apkকেবলমাত্র ADTলেআউট এডিটরে প্যাকেজ করা হবে না , প্রসঙ্গে রেন্ডারিংয়ে আপনার বর্তমান লেআউটটি দেখান ক্রিয়াকলাপের নামটি ক্রিয়াকলাপের সাথে মিলে যায়, যদি manifestফাইলের ক্রিয়াকলাপ কোনও থিম সেট করে, তবে ADTলেআউট সম্পাদক আপনার বর্তমান লেআউটটিকে MainActivityথিম অনুসারে রেন্ডার করবে e মানে আপনি যদি একটি থিম সেট করেন তবে । হালকা (অন্যটি), তারপরে আপনি ভিজ্যুয়াল লেআউট ম্যানেজারে দেখতে পাবেন ও থিমটি কী হওয়া উচিত তার পটভূমি নিয়ন্ত্রণ। হালকা দেখতে দেখতে। কেবল আপনি যা দেখেন তা দেখানোর জন্যই আপনি ফলাফল পান।

কিছু লোক দেখবে কিছু বুঝবে, কিছু লোক দেখবে তারাও জানে না, আমি ব্যাখ্যাটির কয়েকটি শব্দ যুক্ত করব:

2.Sample

একটি সাধারণ নিন tools:text, উদাহরণস্বরূপ, আরও কিছু চিত্র, আরও বুঝতে সুবিধাজনক Taketools:context

<TextView
    android:id="@+id/text1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="sample name1" />

<TextView
    android:id="@+id/text2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    tools:text="sample name2" />

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

TextView1 টি গ্রহণ করেছে android: textএবং 2- tools:textএ ব্যবহার করে TextView, লেআউট সম্পাদকের ডানদিকে sample name1, sample name2দুটি ফন্ট প্রদর্শন করবে , আপনি কোডটি সংকলন চালানোর পরে, উত্পন্ন apk, কেবলমাত্র টার্মিনাল প্রদর্শনের জন্য sample name1, sample name2শব্দগুলি প্রদর্শন করবেন না । আপনি চালানোর চেষ্টা করতে পারেন, দেখুন কিভাবে প্রভাব।

3. স্পেসিফিক বর্ণনা

1. tools: context = "activity name"এটিতে প্যাকেজ করা হবে না apk(বোঝার জন্য: এর সমতুল্য মন্তব্য করা হয়েছে, সংকলিত কোনও প্রভাব নেই))

২. কেবলমাত্র ADTলেআউট সম্পাদক (যেমন, সিমুলেটারের ডানদিকে উপরের আইকনটির জন্য) বর্তমান লেআউট ফাইল সেটটিতে রেন্ডারিং প্রসঙ্গে, প্রসঙ্গটি রেন্ডারিংয়ে বর্তমান এক্সএমএলের লেআউটটি ক্রিয়াকলাপের সাথে সম্পর্কিত, যদি কার্যকলাপের নাম হয় ম্যানিফেস্ট ফাইলের ক্রিয়াকলাপ একটি থিম সেট করে, তারপরে ADTলেআউট সম্পাদক আপনার বর্তমান লেআউটটিকে MainActivityথিম অনুসারে রেন্ডার করবে e মানে আপনি যদি সেটটি থিম সেট করেন তবে । লাইটটি (অন্যান্য )ও হতে পারে understand (বুঝতে: আপনি যুক্ত করেছেন tools: context = "activity name", এক্সএমএল লেআউট নির্দিষ্ট ক্রিয়াকলাপ রেন্ডার করছে, ম্যানিফেস্ট ফাইলে একটি থিম স্থাপন করে, ডান সিমুলেটারের উপরে চিত্রযুক্ত থিম শৈলী থিমের সাথে সম্পর্কিত পরিবর্তনগুলিও অনুসরণ করবে))

4.summary

সংক্ষেপে, এই বৈশিষ্ট্যগুলি মূলত সঠিক সরঞ্জামগুলির উপরে লক্ষ্য করে, সিমুলেটর ডিবাগিং সময় প্রদর্শনের স্থিতি এবং সংকলন কাজ করে না,


7

"সরঞ্জামগুলি: প্রসঙ্গ" হ'ল ডিজাইন বৈশিষ্ট্যগুলির মধ্যে একটি যা বিকাশের কাঠামোর এক্সএমএলে বিন্যাস তৈরিতে সহায়তা করে। এই বৈশিষ্ট্যটি বিন্যাসটি বাস্তবায়নের জন্য কোন ক্রিয়াকলাপ শ্রেণি চয়ন করা হয়েছে তা বিকাশের কাঠামোটি দেখানোর জন্য ব্যবহৃত হয়। "সরঞ্জামগুলি: প্রসঙ্গ" ব্যবহার করে অ্যান্ড্রয়েড স্টুডিও স্বয়ংক্রিয়ভাবে পূর্বরূপের জন্য প্রয়োজনীয় থিমটি চয়ন করে।

যদি আপনি অ্যান্ড্রয়েড অ্যাপ্লিকেশন বিকাশের জন্য আরও কিছু বৈশিষ্ট্য এবং দরকারী সরঞ্জামগুলি সম্পর্কে আরও জানতে চান তবে এই পর্যালোচনাটি একবার দেখুন: http://cases.azoft.com/4-must- ज्ञान- tools-for- Effective-android -development /


3

এটি সেরা সমাধান: https://developer.android.com/studio/write/tool-attributes

এটি এমন ডিজাইন বৈশিষ্ট্য যা আমরা এক্সএমএল এর মতো অ্যাক্টিভিটি প্রসঙ্গ সেট করতে পারি

tools:context=".activity.ActivityName"

নাটক:

tools:context="com.PackegaName.AdapterName"

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

চিহ্নিত আইকনটিতে ক্লিক করার সময় আপনি জাভা ক্লাসে নেভিগেট করতে পারেন এবং সরঞ্জামগুলির মতো আরও বৈশিষ্ট্য রয়েছে

tools:text=""
tools:visibility:""
tools:listItems=""//for recycler view 

etx


0

tools:context=".MainActivity" এই লাইনটি এক্সএমএল ফাইলে ব্যবহৃত হয় যা নির্দেশ করে যে এই এক্সএমএল ফাইলটি অ্যাক্সেস করতে কোন জাভা উত্স ফাইলটি ব্যবহৃত হয়। এর অর্থ পার্টিকুলার জাভা ফাইলগুলির জন্য এই এক্সএমএল পূর্বরূপটি দেখান।

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