android - এক্সএমএল অ্যাট্রিবিউট সিঙ্গললাইন অ্যান্ড্রয়েডে অবচিত বা না?




android-edittext attributes (7)

singleLine এবং সম্পাদনা singleLine জন্য এক্সএমএল লেআউট ফাইলগুলিতে singleLine ব্যবহার করা হয়েছে / যেমন:

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:singleLine="true" />

এসও-তে থাকা কিছু লোকেরা বলেন যে singleLine করা হয়েছে, অন্য ব্যক্তিরা এখনও এটি ব্যবহার করার পরামর্শ দিচ্ছেন। কখনও কখনও এমনকি maxLines="1" কাজ না করে ব্যবহার করা প্রয়োজন বলে মনে হয়। ( here , here এবং here )

এই প্রশ্নের উত্তর দেওয়ার জন্য ডক্সের জায়গা হওয়া উচিত, তাই না? এখানে তারা বলে:

এই ধ্রুবকটি এপিআই স্তরের 3 এ অবমূল্যায়ন করা হয়েছিল।

এই বৈশিষ্ট্যটি হ্রাস করা হয়। স্ট্যাটিক পাঠ্যের বিন্যাস পরিবর্তনের জন্য textMultiLine ব্যবহার করুন, এবং সম্পাদনাযোগ্য পাঠ্য দর্শনগুলির জন্য ইনপুট টাইপ বৈশিষ্ট্যের পরিবর্তে পাঠ্য textMultiLine পতাকা ব্যবহার করুন (যদি উভয়ই সিঙ্গললাইন এবং ইনপুটটাইপ সরবরাহ করা হয় তবে ইনপুট টাইপ পতাকাগুলি একক লাইনের মানকে ওভাররাইড করবে)।

যাইহোক, android:singleLine বা setSingleLine বা সেট setTransformationMethod জন্য এটি setTransformationMethod setSingleLine কোনও ইঙ্গিত নেই। একই পাঠ্যদর্শন দস্তাবেজগুলি তুলনা করে STATUS_BAR_HIDDEN যে STATUS_BAR_HIDDEN এবং fitSystemWindows STATUS_BAR_HIDDEN মতো অন্যান্য জিনিস fitSystemWindows করা হয়েছে। তাই singleLine একটি ভুল, এটি কি "অবচয়হীন" ছিল, বা কী?

এই প্রশ্নটি আগে জিজ্ঞাসা করা হয়েছিল তবে এটি প্রশ্নের মূল ফোকাস ছিল না (এবং উত্তর দেওয়া হয়নি)।


আমি মনে করি আপনার প্রশ্নের উত্তর ইতিমধ্যে আপনার লিঙ্কিত যে কোনও এসও পোস্টে রয়েছে । দুর্ভাগ্যক্রমে, singleLines কোনও কালো-সাদা বিষয় নয়।

এটি অবমূল্যায়ন করা হয়েছে, তবে তা শীঘ্রই যে কোনও সময় কোথাও যাচ্ছে না

এটিকে অবজ্ঞা করা হয়েছে কারণ এর কর্মক্ষমতা দুর্বল, এর উত্তরসূরি, maxLines । এটি SingleLineTransformationMethod যে স্ট্রিং আপনি maxLines তাতে নতুন maxLines এবং ক্যারেজ রিটার্ন প্রতিস্থাপন করতে maxLines , maxLines বিপরীতে, যা "কেবল" লাইনের সংখ্যার ভিত্তিতে maxLines উচ্চতা সামঞ্জস্য করে এবং কোনও স্ট্রিং প্রতিস্থাপন করে না।

অক্ষর প্রতিস্থাপনের এই পদ্ধতির অর্থ singleLine অপ্রত্যাশিত উপায়ে (যেমন আপনি যদি কাস্টম ফন্ট ব্যবহার করেন) ভাঙ্গতে পারে। এগুলিই এই পারফরম্যান্স এবং নির্ভরযোগ্যতার সমস্যাগুলির কারণে এর অবনমন ঘটে led

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

মনে রাখবেন যে হ্রাসের অর্থ এই নয় যে কোনও এপিআই চলে যাচ্ছে। এর অর্থ হ'ল এর ব্যবহারটি নিরুৎসাহিত করা হয়েছে তবে এটি অনুমোদিত হতে পারে।


আমি স্রেফ android:inputType="text" এবং android:maxLines="1" সরিয়ে android:maxLines="1" , এটি আমার পক্ষে ভাল কাজ করেছে।


কেবল ভেবেছি যে আমি অ্যান্ড্রয়েড স্টুডিও ২.২.১ পতাকাগুলি সিঙ্গললাইনকে অবহিত হিসাবে যুক্ত করব। তবে, আমি যা পেয়েছি তা হ'ল আমার উদাহরণে:

android:singleLine="false"

ভাল কাজ করে, যদিও

android:maxLines="2"

না.


কেবলমাত্র android:maxLines="1" এবং android:minLines="1" কীবোর্ড actionNext সম্পর্কিত সমস্যা সমাধান করবে না। এর জন্য android:inputType="text" ব্যবহার করুন।


যদিও অ্যান্ড্রয়েড স্টুডিওর দাবি করা হয়েছে যে এটি অবহেলা করা হয়েছে, বাস্তবে আমাদের কাছে একটি সম্পাদনা পাঠ্য ছিল যা এটিকে কেবলমাত্র একক-লাইনে থাকতে দেয়।

maxLines="1" যোগ করা maxLines="1" এটি নিউলাইন চরিত্রগুলিকে মঞ্জুরি দেয়, যা আমাদের প্রয়োজনের জন্য উপযুক্ত নয়।

সুতরাং আমরা singleLine="true" ব্যবহার করতে ফিরে গিয়েছিলাম।


সহজ বিকল্প উপায়, ব্যবহার করুন: android:maxLines="1"


singleLine । কোনও আলোচনার দরকার নেই।

একমাত্র সমস্যা হ'ল ভুল ডকুমেন্টেশন।
"সম্পাদনাযোগ্য পাঠ্য দর্শনগুলির পরিবর্তে inputType অ্যাট্রিবিউটে টেক্সট textMultiLine পতাকাটি ব্যবহার করুন" এটি textMultiLine ব্যবহার করে আপনি কী অর্জন করতে চান তার সরাসরি বিপরীত।

এর পরিবর্তে আপনি android:inputType="text" ব্যবহার করতে পারেন।
আমার জন্য এটি ঠিক তাই করেছিল - লাইন ব্রেক ব্যতীত একটি লাইনের সাথে একটি সম্পাদনা।






android-singleline