অক্ষরের ক্ষেত্রে টেক্সটভিউয়ের প্রস্থ নির্ধারণ করুন


88

সত্যিই একটি খুঁজছেন উত্তর

একটি সংখ্যা বা অক্ষরের উপর ভিত্তি করে একটি পাঠ্য ভিউয়ের প্রস্থ সেট করতে চান। সুতরাং যদি আমি চাই যে এটি সর্বদা 3 টি অক্ষর প্রশস্ত হয় তবে আমি সেট করতে পারি এবং এটি পাঠ্য আকারের সেটিংসের উপর ভিত্তি করে সমন্বয় করবে। এটি ছাড়া, আমাকে 50 ডিপ বা কিছুতে প্রস্থ নির্ধারণ করতে হবে, যা ফন্টের আকারের উপর নির্ভর করে সঠিক হতে পারে বা নাও পারে।


আপনার মাত্রাটি ভিতরে উল্লেখ করার মাধ্যমে এটি করার একটি উপায় সম্ভবত রয়েছে sp
কমন্সওয়ের

@ কমন্সওয়্যার, হ্যাঁ, আপনি যদি আমাকে বলতে পারেন যে কতগুলি এসপি সমান একটি চরিত্র যা কাজ করতে পারে (তবে নীচে আমার উত্তর দেখুন মিনিমেমগুলি ব্যবহার করে যা আমি মনে করি এটিই আমি চাই)। সুতরাং যদি পাঠ্য আকার = 30sp এবং আমি 3 টি অক্ষর প্রশস্ত করতে চাই, তবে আমি প্রস্থটি 90sp এ সেট করব? আমার ধারণা আমি এটি চেষ্টা করতে পারলাম।
ফ্রেগল

4
হ্যাঁ, minEmsসম্ভবত একটি ভাল উত্তর।
কমন্সওয়্যার

উত্তর:


177

আমার নিজের প্রশ্নের উত্তর দিচ্ছি ...

এবং বিজয়ী হ'ল: minEmsবৈশিষ্ট্য নির্ধারণ করুন (android:minEms ) !!!

সুতরাং " ems " দেখা যাচ্ছে যে বিস্তৃত চরিত্রের আকারকে বোঝায়, সাধারণত একটি "এম" থাকে, তাই না? সুতরাং একটি এডিটেক্সট বা টেক্সটভিউতে একটি পূর্ণসংখ্যার মানকে মিনিমাম সেট করা 3 এটির কমপক্ষে 3 অক্ষর প্রশস্ত করা উচিত। আপনি সর্বোচ্চটিও সেট করতে পারেন।

সুতরাং এই থ্রেডে কাইলের উত্তরটি ভুল হলেও, আমাকে উত্তরটি সন্ধান করেছে, তাই কাইলকে ধন্যবাদ জানাই।


4
অবশ্যই আমি এটি এখনও কাজ করে কিনা তা পরীক্ষা করে নিচ্ছি তবে এখনও পর্যন্ত এটি দেখতে এটির মতো দেখাচ্ছে।
29:41

8
এছাড়াও মনে রাখবেন layout_widthচাহিদা হতে wrap_contentহিসাবে হিসাবে উদ্দীষ্ট minEms এবং কাজের স্থানের জন্য maxEms জন্য এই উত্তর পয়েন্ট আউট।
জোনিক

0

বেশিরভাগ ফন্টগুলি সমস্ত অক্ষরের প্রস্থকে অভিন্ন হিসাবে সেট করে না। কুরিয়ার সম্ভবত এটির জন্য সর্বাধিক ব্যবহৃত ব্যতিক্রম তবে সাধারণত একটি i এবং A এর মধ্যে পার্থক্যটি দেখুন look এটি আপনার সমস্যার জন্য কিছুটা করতে বলছে makes


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

0

ব্যবহার করার চেষ্টা করুন: android:maxLength="3"

এটি আপনার পাঠ্যকে নির্দিষ্ট সংখ্যক অক্ষরের মধ্যে সীমাবদ্ধ করবে।


0

ems, জনপ্রিয় বিশ্বাসের বিপরীতে (বা কমপক্ষে এখানে ems সম্পর্কিত বেশিরভাগ থ্রেড থেকে) একক 'এম' এর প্রস্থ থেকে ভিত্তি করে নয়।

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

সুতরাং এর অর্থ যখন আপনি emsকোনও পাঠ্যদর্শনটির জন্য নির্দিষ্ট করবেন, এটি এটি textSizeএকটি বেস হিসাবে ব্যবহার করবে এবং emsনির্দিষ্ট দ্বারা এটিকে গুণ করবে ।

একটি নমুনা হিসাবে, যদি আপনি একটি 16 স্পেস টেক্সটভিউ ems4 এ সেট করেন তবে এর প্রস্থটি 64 স্পেস প্রশস্ত হবে। includeFontPaddingকনস্ট্রেন্টলয়েট (এর উত্তোলনের জন্য) এর পাশাপাশি পাশাপাশি দুটি টেক্সটভিউ ( মিথ্যাতে সেট করে) ব্যবহার করে আপনি এটি সহজেই পরীক্ষা করতে পারেন layout_constraintDimensionRatio

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