android - কিভাবে EdText এ আন্ডারবার লুকান




textview android-edittext (11)

আমি কিভাবে EditText আন্ডারবোর্ডটি লুকিয়ে রাখতে পারি (প্রান্তে সামান্য সেরিফগুলির সাথে প্রম্পট লাইন)?

আমি যা চাই তা করতে একটি ভাল উপায় হতে পারে: আমার একটি সম্পাদনাের সাথে একটি বিন্যাস রয়েছে। সাধারনত, এটি দারুণ প্রদর্শন করে যেখানে ব্যবহারকারী এটিতে ট্যাপ করতে পারে এবং পাঠ্য প্রবেশ বা সম্পাদনা করতে শুরু করতে পারে।

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

স্টপ-ফাঁক পরিমাপ হিসাবে, আমি EditText সরিয়ে এবং একটি টেক্সট ভিউ প্রতিস্থাপন করে এটি বাস্তবায়ন করতে যাচ্ছি। আমার মনে হয় যে এটি পছন্দসই ফলাফল দেবে, কিন্তু এটি এমন কিছু করার জন্য ব্যয়বহুল উপায় যা মনে হচ্ছে বৈশিষ্ট্যগুলি পরিবর্তন করে সহজ করা উচিত।


আপনাকে একটি মিনিউইথও সেট করতে হবে, না হলে পাঠ্য খালি হলে কার্সার অদৃশ্য হয়ে যাবে।

        <EditText
            android:id="@+id/et_card_view_list_name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:minWidth="30dp"
            android:layout_weight="1"
            android:inputType="text"
            android:text="Name"
            android:background="@android:color/transparent"
            />

আপনার সম্পাদনা টেক্সট ইতিমধ্যে একটি পটভূমি আছে তাহলে আপনি নিম্নলিখিত ব্যবহার করতে পারেন।

android:textCursorDrawable="@null"

আপনি আপনার editText এর জন্য একটি স্টাইল সংজ্ঞায়িত করতে পারেন যাতে আপনি সমস্ত বৈশিষ্ট্যগুলিকে সাধারণভাবে পুনরুদ্ধার করতে পারেন। যদি আপনার একাধিক সম্পাদনা পাঠ্য থাকে তবে এটি খুব শক্তিশালী, যেটির আচরণের প্রয়োজন

কোডটি res / values ​​/ styles.xml এ রাখুন

<style name="MyEditTextStyle" parent="@android:style/TextAppearance.Widget.EditText">
    <item name="android:background">@color/transparence</item> //NO UNDERBAR
    <item name="android:maxLines">1</item>
    <item name="android:height">28dp</item> //COMMON HEIGHT
</style>

তারপরে আপনাকে এটি আপনার সম্পাদনা পাঠ্যতে কল করতে হবে

                   <EditText
                    android:id="@+id/edit1"
                    style="@style/MyEditTextStyle"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" />
                   <EditText
                    android:id="@+id/edit2"
                    style="@style/MyEditTextStyle"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" />

আপনি একটি নির্দিষ্ট রঙে EditText এর backgroundTint মান নির্ধারণ করতে পারেন। আপনি স্বচ্ছ রঙ সেট করলে, অন্তর্বাস চলে যাওয়া উচিত।

android:backgroundTint="@color/Transparent"

<color name="Transparent">#00000000</color>

কিন্তু আপনি এটি Api v21(Lollipop) বা উচ্চতর ব্যবহার করতে পারেন


আমি কি একটি আকৃতি অঙ্কনযোগ্য তৈরি এবং ব্যাকগ্রাউন্ড হিসাবে সেট ছিল:

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <padding
        android:top="8dp"
        android:bottom="8dp"
        android:left="8dp"
        android:right="8dp" />

    <solid android:color="#fff" />

</shape>

দ্রষ্টব্য: আমি আসলে @dimen জন্য @color @dimen এবং @color মান ব্যবহার করেছি, তবে আমি স্বচ্ছতার জন্য এখানে আকৃতির ফাইল সরলীকৃত করেছি।


আমি সবচেয়ে অদ্ভুত জিনিস আবিষ্কৃত! আপনি যদি ডাটা বাইন্ডিং ব্যবহার করে এটি নিলতে সেট করেন: android:background="@{null}"

তারপরে কেবল পটভূমি সরানো হয় না, তবে দৃশ্যটিতে প্যাডিংয়ের ডিফল্ট ব্যাকগ্রাউন্ড থেকে গণনা করা হয়েছে। তাই কিছু কারণে বিলম্বিত নাল সেটিং পূর্ববর্তী বিজি থেকে প্যাডিং পরিষ্কার করে না ..? দৃশ্যটিতে প্যাডিং বাম / শীর্ষ / ডান 4 ডিপি, নীচে 13dp (এমুলেটর লেভেল 21 থেকে)।

সমস্ত API স্তরের একই শেষ ফলাফল হতে পারে না, তাই সাবধান! আপনি এই পরীক্ষা এবং এটি নির্ভরযোগ্য খুঁজে যদি কেউ আমাকে বলুন। (এছাড়াও নোট করুন যে নীচের প্যাডিংটি আসল রেখার কারণে আন্ডারলাইন হয়ে গেছে। সুতরাং সম্ভবত আপনি এটি XML এ পরিবর্তন করতে চান, বা এটি সমান শীর্ষে লোড হওয়ার পরে কোডটিতে পুনরায় সেট করুন ...


নাল ব্যাকগ্রাউন্ড সেট করুন।

android:background="@null"

প্রোগ্রামিং ব্যবহার করুন: সম্পাদনা editText.setBackground(null)

xml ব্যবহার থেকে: android:background="@null"


সম্পত্তি ব্যবহার করে:

android:background="@null"

অথবা

android:background="@android:color/transparent"

EditText এর আন্ডারলাইনে লুকানোর জন্য আমার জন্য কাজ করেছে।

যাইহোক, নোট করুন যে এটি তখন TextInputLayout এর সাথে একটি স্পেসিং সমস্যা সৃষ্টি করে যা আমি সম্পাদনা পাঠ্যকে পার্শ্ববর্তী করেছি


হিসাবে আপনার edxtxt পটভূমি সেট করুন

android:background="#00000000"

এটা কাজ করবে।


আপনি একটি স্বনির্ধারিত স্বচ্ছ ড্রয়বেল বা সম্পাদনা করার জন্য EditText সেট করতে পারেন

android:background="@android:color/transparent"

অথবা

android:background="@null"




android-edittext