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

Элемент нестандартной формы - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Не получается обработать долгий клик по TextView http://www.cyberforum.ru/android-dev/thread617188.html
Здравствуйте! Помогите понять/найти ошибку, пожалуйста! Не могу создать переменную типа TextView...
Android Судоку Написал Судоку по учебнику но там много ошибок многие я исправил но вот остались еще. если не сложно исправьте их и напишите там где они были что надо было делать http://www.cyberforum.ru/android-dev/thread616638.html
Нужна поддержка опытного андроид-программера Android
Всем, привет. Произошло очень важное для меня событие - меня позвали на работу программистом Android на написание небольших несложных приложений. Обозначили испытательный срок в месяц и показали примерно содержание приложений. Теперь важно не ударить в грязь лицом. В этой связи хотелось бы подстраховаться и заручиться дистанционной поддержкой 1-2х опытных людей, которые могут оперативно дать...
Вылет приложения при работе с jsoup Android
приложение вылетает на строках : String html = "<html>Some html text</html>"; Document doc = Jsoup.parse(html);либу пробовал по разному подключать , все ровно вылетает ((( подскажите пожалуйста что не так
Android Программирование под android. С чего начать? http://www.cyberforum.ru/android-dev/thread615779.html
Добрый день уважаемые форумчане!Очень хочу научиться программировать под android.Подскажите пожалуйста с чего начинать обучение поэтапно.Какие языки и платформы изучать?Какие книги почитать? P.S.Только не надо посылать меня к дядюшке гуглу,лучше воздержитесь от ответа!Поиск по гугле вызывает взрыв мозга,так как на каждом сайте пишут о куче всевозможных самоучитель и лекций и каждая самая...
Android Android интерфейс Всем доброго дня! Я начинающий в разработке под андроид. Есть необходимость создавать различные элементы. Кнопки с разрешение для разных экранов и т.д. Кто какими пользуется инструментами. Может есть какие полезные линки. Буду очень благодарен. подробнее

Показать сообщение отдельно
kvaka
 Аватар для kvaka
29 / 29 / 3
Регистрация: 26.06.2012
Сообщений: 163
02.07.2012, 02:38  [ТС]     Элемент нестандартной формы
Создал такой класс
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
public class CircleView extends View {
 
    public CircleView(Context context) {
        super(context);
    }
    
    public CircleView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }
    
    public CircleView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }
    
    
    @Override
    protected void onDraw(Canvas canvas) {
        //super.onDraw(canvas);
        Path path = new Path();
        int h=canvas.getHeight();
        int w=canvas.getWidth();
        int r=h;
        path.addCircle(w, h, r, Path.Direction.CW);
        canvas.clipPath(path);
 
    }
 
}
Создал разметку
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?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" >
    
    <com.tests.hor.CircleView
        android:id="@+id/single_picture"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@drawable/lev"
        />
    
 
</LinearLayout>
Написал активити
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package com.tests.hor;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
 
public class HorActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.one_picture);
        CircleView onePicture=(CircleView)findViewById(R.id.single_picture);
        onePicture.invalidate();
       
            } 
    }
}
Бэкграунд рисует, больше ничего не делает.

В документации по классу View написано, что параметр canvas, передаваемый в метод OnDraw - это холст на котором рисуется бекграунд. Соответственно, чтобы вывести на экран обрезанное изображение я должен обрезать этот cavas методом canvas.clippath(path). Что я делаю не так?
 
Текущее время: 10:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru