Основная деятельность
public class MainActivity extends AppCompatActivity {
private ListView listView;
private MyAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.listView1);
adapter = new MyAdapter(this);
adapter.addItem(new ModelPlayer("AK", "37"));
adapter.addItem(new ModelPlayer("BK", "36"));
adapter.addItem(new ModelPlayer("CK", "35"));
adapter.addItem(new ModelPlayer("DK", "34"));
listView.setAdapter(adapter);
}
}
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/btnGetList" >
</ListView>
</RelativeLayout>
MyAdapter
public class MyAdapter extends BaseAdapter {
private Context context;
private ArrayList<ModelPlayer> players;
public MyAdapter(Context context) {
super();
this.context = context;
players = new ArrayList<ModelPlayer>();
}
public MyAdapter(Context context, ArrayList<ModelPlayer> players) {
super();
this.context = context;
this.players = players;
}
public void addItem(ModelPlayer player) {
players.add(player);
notifyDataSetChanged();
}
@Override
public int getCount() {
return players.size();
}
@Override
public Object getItem(int position) {
return players.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
private class ViewHolder {
TextView txtPlayer, txtScore;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.layout_item, null);
holder = new ViewHolder();
holder.txtPlayer = (TextView) convertView.findViewById(R.id.txtPlayer);
holder.txtScore = (TextView) convertView.findViewById(R.id.txtScore);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
ModelPlayer player = players.get(position);
holder.txtPlayer.setText(player.getPlayer());
holder.txtScore.setText(player.getScore());
return convertView;
}
}
layout_item.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/rlBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/shape_circle"
android:padding="20dp" >
<TextView
android:id="@+id/txtPlayer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="AK" />
<TextView
android:id="@+id/txtScore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/txtPlayer"
android:layout_centerHorizontal="true"
android:text="34" />
</RelativeLayout>
</LinearLayout>
ModelPlayer
public class ModelPlayer {
private String player, score;
public ModelPlayer(String player, String score) {
super();
this.player = player;
this.score = score;
}
public String getPlayer() {
return player;
}
public void setPlayer(String player) {
this.player = player;
}
public String getScore() {
return score;
}
public void setScore(String score) {
this.score = score;
}
}
вытяжке/shape_circle.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval" >
<solid android:color="#fa0000" >
</solid>
</shape>
Я надеюсь, что этот пример будет полезным для вас
Ого спасибо так много, что было быстро! Тем не менее, я считаю, что эта реализация заказывает круги вертикально. Я искал, чтобы эти изображения в верхней части экрана упорядочивались по горизонтали. – vgbcell
@vagabond_cell Для горизонтальной вы можете использовать горизонтальную ссылку ListView: https://github.com/MeetMe/Android-HorizontalListView –