Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Программирование Android Получить путь к карте памяти (SD card) Не педелитесь методом, который возвращает путь к карте памяти, если она есть? Нащел вот такой метод в интернете, но на некоторых устройствах работает некорректо. Например на galaxy s3 все ок, а вот на s4 не находит. public static HashSet<String> getExternalMounts() { final HashSet<String> out = new HashSet<String>(); String reg =... https://www.cyberforum.ru/ android-dev/ thread1362686.html Как частично заполнить цветом кнопку Программирование Android
Всем привет.Подскажите как частично заполнить цветом кнопку как на картинке, с возможностью регулирования заполненности. Спасибо.
Программирование Android Если смысл использовать login activity в Android Studio? Или писать самому? https://www.cyberforum.ru/ android-dev/ thread1362665.html
Есть ли исходники логин-пароль окна?
Программирование Android Как спрятать рекламу admob под экранную клавиатуру? https://www.cyberforum.ru/ android-dev/ thread1362645.html
Ситуация такова, что в приложении есть поля ввода. Баннер admob размещен внизу активити. когда ставлю фокус в поле ввода появляется клавиатура и баннер подымается над ней. Что я не пробовал какие компановки и настройки лайотов ничего не помогает спрятать баннер. Есть конечно вариант скрывать его видимость, но как тогда отловить появление клавиатуры? Просто мне кажется что можно получить бан от...
Степень популярности разработчиков приложений для iOS в наше время Программирование Android
Лучшим порядковым показателем популярности и значимости разработчиков мобильных приложений является его рейтинг. Сайт http://www.ratingruneta.ru/apps/ посвящён подобному рейтингу. В списке рейтинга разработчики мобильных приложений имеют 100 позиций. Уже лет 7 в России развивается малый и средний бизнес. Рывок вперёд в направлении разных электронных программ заставляет задуматься: А что дальше?...
Программирование Android Статистика Google Play Service и баг Google Analytics https://www.cyberforum.ru/ android-dev/ thread1362631.html
В процессе написания простейшего приложения с использованием Google Analytics v4 нашел забавный баг. Его последствия, методы лечения, и желание увидеть статистику Play Service ниже. Как я понял сама аналитика интегрирована в play services. Без задней мысли захожу в документацию и указываю в gradle последнюю версию (допустим 6.5.87). Собранный пример нормально функционирует, отправляет...
Программирование Android Работа с Broadcast Receiver Здравствуйте, возникла проблема - не могу найти информацию о том, как передать из сервиса коллекцию битмапов в мою активити, используя ресивер. Весь день искал информацию по нему, ничего не усвоил. Буду благодарен за помощь в виде полезных ссылок или примеров такой "передачи" https://www.cyberforum.ru/ android-dev/ thread1362562.html Программирование Android Android SMS Manager
Всем доброго времени суток. Кто нибудь знает, одновременно Android SMS Manager сколько смс может обработать? Могу ли я использовать созданное на телефоне приложение в качестве смс рассылщика? Смог созать и отправить смс так же читать входящие, но не знаю как поведет программа себя при нагрузках. Благодарю за ответы
Программирование Android Обрезка строки Spinner https://www.cyberforum.ru/ android-dev/ thread1362437.html
Здравствуйте! У меня есть spinner, содержащий длинноватые строки. Можно ли выводить выбранную строку урезанной? Тоесть я из списка выбираю длинную строку, а в закрытом спиннере выбранная строка отображается укороченной. Заранее спасибо!
Программирование Android Работа с txt Какие есть способы прописки кода отоброжения текста с файла txt в андроиде? https://www.cyberforum.ru/ android-dev/ thread1362348.html
Backend для меседжера Программирование Android
Доброго дня всем! Решил попробовать написать свой меседжер! На Watsapp 2 не претендую, пишу ради интереса, столкнулся с непосильной задачей. Нужен Backend, который будет выполнять функционал: 1. Регистрация пользователя в БД 2. Login с выдачей токена (я так думаю что это примерно так должно быть) 3. Отправка и получение сообщений Как то так. В Гугле нашел много чего, но практически...
Программирование Android Xml parse Всем привет. Работаю с Yahoo api. Использую autocompletetextview для упрощения выбора города. Но вот такая штука, если я открываю xml в браузере то все названия, городов, стран, на русском. Но на устройстве autocompletetextview, русский ввод не работает. В чем причина? Но если писать названия городов транслитом, то всё ок. https://www.cyberforum.ru/ android-dev/ thread1362140.html
0 / 0 / 0
Регистрация: 26.01.2015
Сообщений: 12
27.01.2015, 17:40  [ТС] 0

Canvas поверх GridLayout - Программирование Android - Ответ 7156385

27.01.2015, 17:40. Показов 1737. Ответов 2
Метки (Все метки)

Ответ

Gabberr, спасибо за мысль, всё получилось!
Только я вместо
Цитата Сообщение от Gabberr Посмотреть сообщение
прозрачный relativelayout со своей вьюхой
сразу использовал View. А т.к. в предыдущей реализации есть проблемы с перерисовкой вьюхи, то я использовал переопределённый onDraw() и метод invalidate() (заодно разобрался, что это такое и для чего нужно).
Вот результат.
java (цифры подобраны для hdpi-плотности):
Кликните здесь для просмотра всего текста
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
public class MainActivity extends Activity {
    private FrameLayout frmLayMain;
    private View drawView;
    private boolean isLeftDiag = true;
    
    @Override protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        frmLayMain = (FrameLayout)findViewById(R.id.frmLayMain);    
        drawView = new DrawView(this);
        
        ViewGroup.LayoutParams layPar = new ViewGroup.LayoutParams((int)(120*1.5), (int)(120*1.5));
        FrameLayout.LayoutParams frmLayPar = new FrameLayout.LayoutParams(layPar);
        frmLayPar.gravity = Gravity.CENTER;
        
        frmLayMain.addView(drawView, frmLayPar);
    }
    
    class DrawView extends View {
        Paint p;
 
        public DrawView(Context context) {
            super(context);
            p = new Paint();
        }
 
        @Override protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            p.setColor(Color.BLUE);
            p.setStrokeWidth(15);
            
            if(!isLeftDiag) {           
                canvas.drawLine(0, 180, 180, 0, p);
            } else {
                canvas.drawLine(0, 0, 180, 180, p);
            }
        }
    }
    
    public void onClickDraw(View v) {
        drawView.invalidate();
        if(!isLeftDiag) {           
            //drawView.setVisibility(View.VISIBLE);
            isLeftDiag = true;
        } else {
            //drawView.setVisibility(View.INVISIBLE);
            isLeftDiag = false;
        }
    }
}

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
32
33
34
35
36
37
38
39
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/frmLayMain"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    
    <GridLayout
        android:id="@+id/gridLay1"
        android:onClick="onClickDraw"
        android:columnCount="2"
        android:background="#FF59BEEC"
        android:orientation="horizontal"
        android:layout_gravity="center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        <ImageView
            android:id="@+id/imageView0"
            android:layout_marginRight="20dp"
            android:layout_marginBottom="20dp"
            android:background="#FFE97F"
            android:layout_width="50dp"
            android:layout_height="50dp" />
        <ImageView
            android:id="@+id/imageView1"
            android:background="#FFE97F"
            android:layout_width="50dp"
            android:layout_height="50dp" />
        <ImageView
            android:id="@+id/imageView2"
            android:background="#FFE97F"
            android:layout_width="50dp"
            android:layout_height="50dp" />
        <ImageView
            android:id="@+id/imageView3"
            android:background="#FFE97F"
            android:layout_width="50dp"
            android:layout_height="50dp" />
    </GridLayout>
 
</FrameLayout>

Скриншот:
Кликните здесь для просмотра всего текста
Canvas поверх GridLayout


Вернуться к обсуждению:
Canvas поверх GridLayout Программирование Android
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.01.2015, 17:40
Готовые ответы и решения:

Как отобразить кнопку поверх остальных элементов или поверх tabPage или поверх tabControl?
Как отобразить кнопку поверх остальных элементов или поверх tabPage или поверх tabControl? ...

Две формы поверх всех окон. Вторая не хочет быть поверх
Ребят, поиск юзал, всё пробовал. Вторая форма не хочет быть наверху, первая нормально наверху...

Установить форму поверх окна, которое ее вызвало, но не поверх других окон в системе
Есть приложение типа &quot;блокнот&quot; - это форма1. Форма2 - форма поиска и замены текста вызывается,...

Windows 10 - панель задач (там где Пуск) поверх всех окон, поверх rdesktop и т.д
Windows 10 - панель задач (там где Пуск) поверх всех окон, поверх rdesktop и т.д. Внезапно на 8...

2
27.01.2015, 17:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.01.2015, 17:40
Помогаю со студенческими работами здесь

Как отобразить форму поверх панели задач, но при этом НЕ поверх других форм?
Всем привет. Прошу помощи с этим простым, казалось бы, вопросом. Местный поиск юзал, гуглил -...

Canvas html5, как разместить черный пискель в центре canvas'a?
как разместить черный пискель в центре canvas'a?

Можно ли одной процедурой рисовать на Image.Canvas и Printer.Canvas
Здравствуйте, пожалуйста, подскажите можно ли одной процедурой рисовать на Image.Canvas и...

построить функцию y=kx+b (линейная функция) с помощью Vcart или canvas (form.canvas)
Надо построить функцию y=kx+b (линейная функция) с помощью Vcart или canvas (form.canvas)

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru