অ্যান্ড্রয়েড দর্শনের মধ্যে একটি অনুভূমিক রেখা আঁকবে


105

আমার নীচের মত আমার লেআউট আছে:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

<TextView
        android:id="@+id/textView1"
        style="@style/behindMenuItemLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:text="Twitter Feeds"
        android:textStyle="bold" />

    <ListView
        android:id="@+id/list"
        android:layout_width="350dp"
        android:layout_height="50dp" />

    <TextView
        android:id="@+id/textView1"
        style="@style/behindMenuItemLabel1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="1dp"
        android:text="FaceBook Feeds" />

    <ListView
        android:id="@+id/list1"
        android:layout_width="350dp"
        android:layout_height="50dp" />

</LinearLayout>

আমার প্রয়োজনীয়তা হল এবং এর মধ্যে একটি অনুভূমিক রেখা আঁকুনTextViewListView

কেউ সাহায্য করতে পারে?


আপনি বিদ্যমান দর্শনগুলির পটভূমিতে লাইন যুক্ত করতে পারেন এবং অতিরিক্ত কোনও যোগ করতে পারেন না। অথবা আপনি আপনার সমস্ত দৃষ্টিভঙ্গি তালিকার ভিউয়ের ভিতরে রাখতে পারেন। listView পৃথককারী আঁকতে পারে। সহজ উপায়গুলি অতিরিক্ত ভিউ যুক্ত করা।
লিওনিডোস

উত্তর:


285

এটি TextView& এর মধ্যে রূপালী ধূসর বর্ণের লাইন আঁকবেListView

<TextView
    android:id="@+id/textView1"
    style="@style/behindMenuItemLabel1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="1dp"
    android:text="FaceBook Feeds" />

<View
    android:layout_width="match_parent"
    android:layout_height="2dp"
    android:background="#c0c0c0"/>

<ListView
    android:id="@+id/list1"
    android:layout_width="350dp"
    android:layout_height="50dp" />

10
এই হার্ডকোডযুক্ত রঙটি একটি ওয়েবপৃষ্ঠায় ইনলাইন সিএসএস ব্যবহার করার মতো। কেন এত বেশি ভোট দেওয়া হচ্ছে? এটি উদাহরণস্বরূপ অ্যান্ড্রয়েড: ব্যাকগ্রাউন্ড = "? অ্যান্ড্রয়েড: অ্যাট্রি / ডিভাইডার হরাইঞ্জোনাল" ব্যবহার করা উচিত
রোল

4
কারণ এটি কার্যকর করা সহজ
ডেনি

1
@ রোল এটি সহজ, সহজ এবং এটি কাজ করে। এবং কোনও রঙকে হার্ডকডিংয়ের স্থলে রেফারেন্স দেওয়া সহজ ward আমি আপনার পরামর্শটি চেষ্টা করেছি, যা আমি প্রযুক্তিগতভাবে আরও ভাল হবে বলে মনে করি, তবে এটি কাজ করে বলে মনে হয় না - আমি আমার বিন্যাসে কোনও বিভাজক পাইনি। আমি এটি কীভাবে ব্যবহার করব? ধন্যবাদ.
nsandersen

23

Spaceডিভাইডার আঁকতে আপনার নতুন লাইটওয়েট ভিউ ব্যবহার করা উচিত । আপনি Spaceপরিবর্তে ব্যবহার করলে আপনার বিন্যাসটি দ্রুত লোড হবে View

অনুভূমিক বিভাজক:

<android.support.v4.widget.Space
        android:layout_height="1dp"
        android:layout_width="match_parent" /> 

উল্লম্ব বিভাজক:

<android.support.v4.widget.Space
        android:layout_height="match_parent"
        android:layout_width="1dp" />

আপনি একটি পটভূমি যোগ করতে পারেন:

<android.support.v4.widget.Space
        android:layout_height="match_parent"
        android:layout_width="1dp"
        android:background="?android:attr/listDivider"/>

ব্যবহারের উদাহরণ:

....
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="One"/>

<android.support.v4.widget.Space
    android:layout_height="match_parent"
    android:layout_width="1dp"
    android:background="?android:attr/listDivider"/>

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Two"/>

<android.support.v4.widget.Space
    android:layout_height="match_parent"
    android:layout_width="1dp"
    android:background="?android:attr/listDivider"/>

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Three"/>
....

ব্যবহার করার জন্য Spaceআপনার বিল্ড.gradle এ নির্ভরতা যুক্ত করা উচিত :

dependencies {
    compile 'com.android.support:support-v4:22.1.+'
}

নথিপত্র https://developer.android.com/reference/android/support/v4/widget/Space.html


11
ব্যবহার Spaceহতাশাজনক হতে চলেছে কারণ Spaceকিছুই আঁকেন না (এমনকি একটি পটভূমিও নয়)। পর্দায় স্থান গ্রহণ করা একমাত্র কাজ। সমাধানটি Viewপরিবর্তে একটি ভ্যানিলা উপাদান ব্যবহার করা হয়। তারপরে পটভূমিটি পছন্দসই হিসাবে আঁকা হবে। (অন্যথায় প্রয়োজন না হলে আপনি সমর্থন লাইব্রেরি নির্ভরতা এড়াতে পারেন))
টেড হপ্প

6
Spaceথেকে উত্তরাধিকার সূত্রে প্রাপ্ত Viewএবং তাই এটি দ্বারা সংজ্ঞায়িত সমস্ত বৈশিষ্ট্য উত্তরাধিকার সূত্রে প্রাপ্ত হয় View। (একইভাবে, বৈশিষ্ট্যটি LinearLayoutউত্তরাধিকার সূত্রে প্রাপ্ত হয় textAlignmentযদিও এটি নিজে কোনও পাঠ্য প্রদর্শন করে না)) নিজের জন্য এটি পরীক্ষা করতে নির্দ্বিধায় (বা কেবল উত্স কোডটি দেখুন) এবং আপনি দেখতে পাবেন যে কোনও Spaceঅঙ্কন-সম্পর্কিত বৈশিষ্ট্য উপেক্ষা করে।
টেড হপ

হ্যাঁ, Spaceএকটি পটভূমি আঁকেন না, এটি স্বচ্ছ।
ভোভোস্ট ইস্ট

21

আপনি আলাদা করতে চান এমন ভিউগুলির মধ্যে আপনার লেআউটে এই জাতীয় কিছু যুক্ত করুন:

  <View
       android:id="@+id/SplitLine_hor1"
       android:layout_width="match_parent"
       android:layout_height= "2dp"
       android:background="@color/gray" />

আশা করি এটা সাহায্য করবে :)


2
এটির উল্লম্ব রেখাটি আঁকবে কারণ এর উচ্চতা ম্যাচ_পিতা এবং প্রস্থটি মাত্র 2 ডিপি।
ভুমিকা ব্রহ্মভট্ট

14

এটি একবার তৈরি করা এবং যেখানে প্রয়োজন সেখানে এটি ব্যবহার করা ভাল ধারণা। আপনার শৈলীতে এটি যুক্ত করুন। Xml:

<style name="Divider">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">1dp</item>
    <item name="android:background">?android:attr/listDivider</item>
</style>

এবং এটি আপনার এক্সএমএল কোডে যুক্ত করুন, যেখানে একটি লাইন বিভাজক প্রয়োজন:

<View style="@style/Divider"/>

মূলত এই প্রশ্নের উত্তর টডলস_এফপি দ্বারা দেওয়া হয়েছে: লেআউটে অ্যান্ড্রয়েড অঙ্কন বিভাজক / বিভাজক লাইন?



6
<View
       android:id="@+id/view"
       android:layout_width="match_parent"
       android:layout_height="2dp"
       android:background="#000000" />

আমরা কি এই উপাদানটি প্রোগ্রামাগুলি অ্যাক্সেস করতে পারি না?
gumuruh

2

লাইনটি অনুকরণ করার জন্য আপনি এই মতামতটি আপনার দর্শনের মধ্যে রাখতে পারেন

<View
  android:layout_width="fill_parent"
  android:layout_height="2dp"
  android:background="#c0c0c0"/>


1

প্রতিটি পিতামাতার LinearLayoutজন্য যার জন্য আপনি উপাদানগুলির মধ্যে বিভাজক চান, যুক্ত করুন android:divider="?android:dividerHorizontal"বা android:divider="?android:dividerVertical

আপনার ওরিয়েন্টেশন অনুযায়ী তাদের মধ্যে উপযুক্ত চয়ন করুন LinearLayout

আমি যতক্ষণ না জানি, এই সংস্থান শৈলীটি অ্যান্ড্রয়েড ৪.৩ থেকে যুক্ত করা হয়েছে।



0

এমন একটি দর্শন যার ব্যাকগ্রাউন্ডের রঙ আপনি নির্দিষ্ট করতে পারবেন (উচ্চতা = কয়েকটি ডিপিআই)। রিয়েল কোডে সন্ধান করা এবং এটি এখানে:

        <LinearLayout
            android:id="@+id/lineA"
            android:layout_width="fill_parent"
            android:layout_height="2dp"
            android:background="#000000" />

মনে রাখবেন এটি কোনও ধরণের হতে পারে View


0

----> সাধারণ one

 <TextView
    android:layout_width="match_parent"
    android:layout_height="1dp"
    android:background="#c0c0c0"
    android:id="@+id/your_id"
    android:layout_marginTop="160dp" />

0

আপনি যদি কোনও অতিরিক্ত দর্শনটি কেবল আন্ডারলাইনগুলির জন্য ব্যবহার করতে না চান তবে। আপনার এই স্টাইল যুক্ত করুন textView

style="?android:listSeparatorTextViewStyle"

ঠিক নীচের দিকে এটি অতিরিক্ত বৈশিষ্ট্য যুক্ত করবে

android:textStyle="bold"
android:textAllCaps="true"

যা আপনি সহজেই ওভাররাইড করতে পারেন।

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