Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Как скрыть CheckBox в списке? - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android "Динамические" кнопки в игре http://www.cyberforum.ru/android-dev/thread1565672.html
Добрый день, хочу написать мини приложение, игра "пятнашки" 16 кнопок(одна пустая),необходимо менять местами пока не выстроим в правильном порядке от 1 до 16 возникла проблема "перемещения,...
Программирование Android EditText.Listener внутри ListView Добрый день. Помогите пожалуйста с задачкой. У меня есть ListView, который пополняется записями типа(TextView/EditText), количество записей может изменяться. Необходимо реализовать Listener... http://www.cyberforum.ru/android-dev/thread1565655.html
Программирование Android Вывод даты в приложении
Использую такую штуку: public TextView current_date; private Timer timer; protected void onStart() { super.onStart(); timer = new Timer("DigitalClock"); ...
Ошибка при эмуляции Android Studio Программирование Android
при запуске (не самой студии а уже эмуляции проекта) выскакивает ошибка "emulator: ERROR: unknown skin name 'WVGA800'" эмулятор как я понял там поставился "AVD_GalaxyNexus_ToolsForApacheCordova" ...
Программирование Android С чего начать http://www.cyberforum.ru/android-dev/thread1565608.html
Хочу попробовать разрабатывать под Android. Среди моих попыток были создание небольших приложений с помощью FireMonkey на С++ и xamarin С#. Появилось желание заняться эти более основательно, в...
Программирование Android Конфигурация железа для Android Studio Пришла пора апгрейдить мой старенький комп. В принципе там старенького мало осталось, только проц и мать, остальное новое практически (БП, видеокарта). Монитор новый - самое главное! Какое... подробнее

Показать сообщение отдельно
Mikalai
256 / 232 / 94
Регистрация: 11.01.2015
Сообщений: 656
02.11.2015, 15:39
disx, вот примерчик.

MainActivity.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ListView;
 
import java.util.ArrayList;
import java.util.List;
 
 
public class MainActivity extends Activity implements View.OnClickListener {
 
    List<String> data;
    CustomArrayAdapter adapter;
    ListView listView;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        data = new ArrayList<>();
        fillList();
 
        Button b = (Button) findViewById(R.id.button);
        b.setOnClickListener(this);
 
        adapter = new CustomArrayAdapter(this, data);
        listView = (ListView) findViewById(R.id.mListView);
        listView.setAdapter(adapter);
    }
 
    @Override
    public void onClick(View v) {
        adapter.checkBoxVisibility();
        adapter.notifyDataSetChanged();
    }
 
    private void fillList() {
        data.add("a");
        data.add("b");
        data.add("c");
        data.add("d");
        data.add("e");
    }
}
activity_main.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
 
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="CheckBox on/off"
        android:id="@+id/button" />
 
    <ListView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/mListView" />
</LinearLayout>
CustomArrayAdapter.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
 
import java.util.List;
 
public class CustomArrayAdapter extends BaseAdapter {
 
    private List<String> data;
    private LayoutInflater inflater;
 
    private boolean isCheckBoxVisible;
 
    public CustomArrayAdapter(Context context, List<String> data) {
        this.data = data;
        inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
 
    @Override
    public int getCount() {
        return data.size();
    }
 
    @Override
    public Object getItem(int position) {
        return data.get(position);
    }
 
    @Override
    public long getItemId(int position) {
        return position;
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        if (view == null) {
            view = inflater.inflate(R.layout.item, parent, false);
        }
 
        ((TextView) view.findViewById(R.id.tvText)).setText(data.get(position));
        if(isCheckBoxVisible) {
            view.findViewById(R.id.checkBox1).setVisibility(View.VISIBLE);
        } else {
            view.findViewById(R.id.checkBox1).setVisibility(View.INVISIBLE);
        }
        return view;
    }
 
    public void checkBoxVisibility() {
        isCheckBoxVisible = !isCheckBoxVisible;
    }
}
и твоя разметка item.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?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="wrap_content"
    android:orientation="horizontal">
 
    <ImageView
        android:id="@+id/ivImg"
        android:layout_width="44dp"
        android:layout_height="44dp"
        android:src="@mipmap/ic_launcher" >
 
    </ImageView>
    <TextView
        android:id="@+id/tvText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:layout_marginLeft="10dp"
        android:layout_weight="0.05"
        android:textSize="18sp">
    </TextView>
    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:focusable="false"
        android:id="@+id/checkBox1"
        android:layout_gravity="center_vertical" />
</LinearLayout>
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru