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

Как реализовать выделение элементов таблицы - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Как в navigation drawer activity засунуть активити http://www.cyberforum.ru/android-dev/thread1816601.html
Здравствуйте! у меня такая проблема navigation drawer activity работает только с фрагментами как мне засунуть активити во фрагмент и открыть его через меню
Программирование Android Отправка данных из dialogfragment в активити в котором был создан диалог Здравствуйте. Нужна помощь. Как сделать так что при нажатии кнопки btnmodal в диалоге, в активити, которая вызвала диалог менялась текствью price, прибавлялось число из тесктвью pricemodal в... http://www.cyberforum.ru/android-dev/thread1816552.html
Программирование Android Тема дипломной работы
Всем привет! Тему диплома пока не выбрал, но есть огромный интерес к созданию приложения (допустим на android), которое обеспечивает обмен данными используя интернет, между устройствами. Имею ввиду...
Программирование Android Список из fragment
Гуру, как подобное сделать? ЕСТЬ: Большой LinearLayout в который надо добавлять разные "блоки" Каждый "блок" оформлен как отдельный фрагмент разной высоты. НАДО: программно добавить любое...
Программирование Android Сохранение данных при пересоздании активити http://www.cyberforum.ru/android-dev/thread1816323.html
Добрый день, может кто-то сталкивался: имеются данные, которые я хочу добавить как ArrayList, но столкнулся с проблемой - если менять что-то в этом массиве, то после пересоздания активити(ArrayList в...
Программирование Android Скачать файл .docx и считать из него текст Был бы ну очень благодарен за код (да да я знаю это наглость) ,подскажите хот в каком направление двигаться подробнее

Показать сообщение отдельно
Paket236
2 / 2 / 0
Регистрация: 16.08.2013
Сообщений: 52
01.10.2016, 16:28  [ТС]
Цитата Сообщение от Паблито Посмотреть сообщение
и где код и разметка
Кликните здесь для просмотра всего текста
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
public class MainActivity extends Activity implements View.OnClickListener, View.OnTouchListener {
 
    private GridLayout gridLayout;
    private ImageView[][] imageView;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        imageView = new ImageView[12][11];
        gridLayout = (GridLayout) findViewById(R.id.gridLayout);
        gridLayout.setColumnCount(11);
 
        for(int i=0; (i<=11); i++) {
            for(int j=0; (j<=10); j++) {
                imageView[i][j] = new ImageView(this);
                gridLayout.addView(imageView[i][j]);
                imageView[i][j].setOnClickListener(this);
                imageView[i][j].setOnTouchListener(this);
                
                // Задаём отступы, размеры и фон клеток
                if(i==0 && j==0) {
                    GridLayout.LayoutParams layoutParamsRB = new GridLayout.LayoutParams();
                    layoutParamsRB.width = layoutParamsRB.height = 41;
                    layoutParamsRB.setMargins(0, 0, 2, 2);
                    imageView[i][j].setLayoutParams(layoutParamsRB);
                }
                if(i==0 && j!=0 && j<=9) {      // проходим по 0-ой строчке
                    MarginLayoutParams marginLayoutParams = new MarginLayoutParams(41, 41);
                    marginLayoutParams.setMargins(0, 0, 2, 0);
                    GridLayout.LayoutParams layoutParamsR = new GridLayout.LayoutParams(marginLayoutParams);
                    imageView[i][j].setLayoutParams(layoutParamsR);
                }
                if(i!=0 && j==0 && i<=10) {     // проходим по 0-ому столбцу
                    MarginLayoutParams marginLayoutParams = new MarginLayoutParams(41, 41);
                    marginLayoutParams.setMargins(0, 0, 0, 2);
                    GridLayout.LayoutParams layoutParamsB = new GridLayout.LayoutParams(marginLayoutParams);
                    imageView[i][j].setLayoutParams(layoutParamsB);
                }
                imageView[i][j].getLayoutParams().width = 41;
                imageView[i][j].getLayoutParams().height = 41;
                imageView[i][j].setBackgroundColor(0xFFFFFFFF);
            }
        }   
    }
 
    @Override
    public void onClick(View v) {
    }
 
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        // Определяем нажатый ImageView
        ImageView img = (ImageView) v;
        int stlb=0;
        int str=0;
        for(int i=0; (i<=11); i++) {
            for(int j=0; (j<=10); j++) {
                if(img == imageView[i][j]) {
                    str=i; stlb=j;
                    break;
                }
            }
        }
        
        imageView[str][stlb].setBackgroundColor(0xFFC1D8FF);
        
        if(event.getAction()==MotionEvent.ACTION_UP) {
            imageView[str][stlb].setBackgroundColor(0xFFFFFFFF);
        }
        return false;
    }
}


Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:gravity="center"
    android:background="#fff"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >          
    <GridLayout
        android:id="@+id/gridLayout"
        android:layout_gravity="center"
        android:background="#FF59BEEC"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
    </GridLayout>
</LinearLayout>


Цитата Сообщение от Паблито Посмотреть сообщение
вот я ткнул в середину экрана допустим, что выделять? вверх, вниз, вверз и вниз
право-лево
Как в игре "Балда", выделять соседние клетки, по горизонтали и вертикали. А какие именно выделять, зависит от содержимого клетки (допустим, иметь ещё один массив String[][] (в дополнение к ImageView[][]), в котором будут храниться буквы).
Цитата Сообщение от OlegJV Посмотреть сообщение
Сделать CustomImageView extends ImageView
Спасибо, попробую. Правда пока непонятно, как это сработает...

Добавлено через 53 минуты
OlegJV, а Вы можете показать на моём примере?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru