Как создать закругленный угол ListView

Как сделать простой ListView в Android, я делаю программу, в которой я получаю ListView в этом стиле:

Adapter.xml:

<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginbottom="5dp" android:layout_marginleft="10dp" android:layout_marginright="10dp" android:layout_margintop="5dp" android:gravity="center_vertical" android:padding="5dip"> <!-- Title Of Song--> <textview android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentleft="true" android:layout_centervertical="false" android:text="Name" android:textsize="15dip" android:typeface="sans"> </textview></relativelayout>

Activity.xml:

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

Но я хочу сделать этот простой список [тот же самый список SHAPE], см. Ниже экран:

6 ответов

вы можете создать адаптер списка и настроить макет по своему усмотрению. для примера:

ListAdapter adapter = new SimpleAdapter( ListShipsActivity.this, ArrayList, R.layout.layout_as_you_want, new String[] { "item1","item2"}, //elements of the item in the list new int[] { R.id.text_view1, R.id.text_view2 }); //ids of the layout elements

после этого создайте XML файл макета, как хотите. В вашем случае, как это

ps: добавьте изображение стрелки в выпадающую папку в вашем проекте


Ваш код нуждается в повторной факторизации для вашего требования.

Эти примеры могут помочь вам.

1- Простой список со стрелкой для перемещения вперед

2- Предварительный пользовательский список со стрелкой

Update your Layout! with corresponding image for arrow and variable names!
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginbottom="5dp" android:layout_marginleft="10dp" android:layout_marginright="10dp" android:layout_margintop="5dp" android:gravity="center_vertical" android:padding="5dip"> <!-- Title Of Song--> <textview android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_aligntop="@+id/thumbnail" android:layout_torightof="@+id/thumbnail" android:text="Name" android:typeface="sans" android:textsize="15dip"> <textview android:id="@+id/artist" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/title" android:textcolor="#343434" android:textsize="10dip" android:layout_margintop="1dip" android:layout_torightof="@+id/thumbnail" android:text="Just gona stand there and ..."> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/arrowImage" android:layout_alignparentright="true" android:layout_centervertical="true"> </imageview></textview></textview></relativelayout>


привет, я думаю, вы пытаетесь настроить список. в том, что вы сортируете этот тип строки списка.

PLZ пойти бросить ниже ссылку.

http://www.codeproject.com/Articles/507651/Customized-Android-ListView-with-Image-and-Text

row.xml

<!--?xml version="1.0" encoding="utf-8"?-->
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/public_row" android:layout_width="match_parent" android:background="@drawable/button_publicrow_selector" android:layout_height="wrap_content" android:layout_margintop="10dp"> <imageview android:layout_width="wrap_content" android:id="@+id/img_public_dealing" android:layout_height="wrap_content" android:background="@drawable/contact_pic" android:layout_centervertical="true" android:layout_alignparentleft="true" android:layout_marginleft="10dp"> <!-- Right most linear layout --> <linearlayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:id="@+id/linear_public_dealing" android:gravity="center_vertical" android:layout_centervertical="true" android:layout_alignparentright="true" android:layout_marginright="3dp"> <button android:id="@+id/btn_delete" android:layout_width="wrap_content" android:layout_height="40dp" android:text="Leave Pit" android:textcolor="#000" android:gravity="center" android:textsize="15dp" android:textstyle="bold" android:visibility="gone"> </button></linearlayout></imageview></relativelayout><button android:id="@+id/btn_notification" android:layout_width="wrap_content" android:layout_height="40dp" android:background="@drawable/notification_selector" android:textcolor="#fff" android:gravity="center" android:textsize="15dp" android:textstyle="bold"><code>&lt;imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/orange_arrow"&gt; &lt;!-- Center Linear LAyout --&gt; &lt;linearlayout android:id="@+id/linear_index" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centervertical="true" android:gravity="left|top" android:orientation="vertical" android:layout_toleftof="@+id/linear_public_dealing" android:layout_torightof="@+id/img_public_dealing"&gt; &lt;linearlayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"&gt; &lt;textview android:id="@+id/txt_pit_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Three Amigos" android:textcolor="#000" android:singleline="true" android:layout_marginleft="5dp" android:textsize="12dp" android:textstyle="bold"&gt; &lt;textview android:id="@+id/txt_index_name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="(U2000)" android:textcolor="#000" android:singleline="true" android:layout_marginleft="10dp" android:textsize="12dp" android:textstyle="bold"&gt; &lt;/textview&gt;&lt;/textview&gt;&lt;/linearlayout&gt; &lt;textview android:id="@+id/txt_profileloss" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="+$100/+50 p" android:textcolor="#0a0" android:layout_marginleft="5dp" android:textsize="10dp" android:textstyle="bold"&gt; &lt;textview android:id="@+id/txt_pitid" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="id" android:visibility="invisible"&gt; &lt;/textview&gt;&lt;/textview&gt;&lt;/linearlayout&gt;
&lt;/imageview&gt;</code> </button>


Согласно вашему требованию

создайте файл формы в своей папке с выделением. Вставьте этот xml в него и измените цвет согласно вашему требованию.

<!--?xml version="1.0" encoding="UTF-8"?-->
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/shape_my"> <stroke android:width="4dp" android:color="#636161"> <padding android:left="5dp" android:top="5dp" android:right="5dp" android:bottom="5dp"> <corners android:radius="24dp"> </corners></padding></stroke></shape>

main.xml

<!--?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"> </linearlayout>

В ListView установите фон android:background="@drawable/shape"

list_row.xml

<!--?xml version="1.0" encoding="utf-8"?-->
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/list_selector" android:orientation="horizontal" android:padding="5dip"> <textview android:id="@+id/category" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Category" android:textcolor="#040404" android:textsize="15dip" android:textstyle="bold" android:typeface="sans"> <textview android:id="@+id/expiry_date" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@id/category" android:layout_margintop="1dip" android:text="Text here." android:textcolor="#343434" android:textsize="10dip"> </textview></textview></relativelayout>


Вам необходимо создать настраиваемый адаптер для заполнения списка типов настраиваемых типов, на котором вы можете следовать следующим шагом Шаг 1 Создайте класс, содержащий атрибут, который вы хотите загрузить из них, следующим образом:

public class Rec {
private String name;
private String city;
public Rec(String name, String city) { super(); this.name = name; this.city = city;
}
public String getName() { return name;
}
public void setName(String name) { this.name = name;
}
public String getCity() { return city;
}
public void setCity(String city) { this.city = city;
}

}

Создайте пользовательский адаптер с классом записи и его атрибутом в следующем порядке:

public class customAdapter extends ArrayAdapter<rec> {
Context context;
public customAdapter(Context context, int textViewResourceId,List<rec> objects) { super(context, textViewResourceId, objects); // TODO Auto-generated constructor stub this.context = context;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub View view; Rec currentRec = getItem(position); LayoutInflater layoutinflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); view = layoutinflater.inflate(R.layout.reclist,parent,false); TextView name = (TextView) view.findViewById(R.id.textView1); TextView city = (TextView) view.findViewById(R.id.textView2); name.setText(currentRec.getName()); city.setText(currentRec.getCity()); //return super.getView(position, convertView, parent); return view;
}
</rec></rec>

Теперь создайте Xml для своего списка View, который вы хотите показать следующим образом:

Теперь создайте свой основной класс, в котором вы заполняете свой список и нажимаете данные соответственно следующим образом:

public class MainActivity extends Activity {
private ListView listView;
List<rec> recList ;
@Override
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); recList = new ArrayList<rec>(); listView= (ListView) findViewById(R.id.listView1); recList.add(new Rec("Ali","Lahore")); recList.add(new Rec("Tahir","Karachi")); recList.add(new Rec("Qasim","Islamabad")); recList.add(new Rec("Bilal","BWP")); recList.add(new Rec("Akhtar","Pindi")); listView.setAdapter(new customAdapter(this,android.R.layout.simple_list_item_1 ,recList));
}
</rec></rec>

}

Создайте свой макет своей основной деятельности следующим образом:

вот ваш полный пользовательский вид списка с динамическими данными


Вы должны иметь googled, есть несколько примеров. ЭТО тот, я последовал за ним.

licensed under cc by-sa 3.0 with attribution.