Comments 4
А в чем главный смысл этой статьи? Показать как рисовать на View или как добавлять View к разметке? Извините, я какого-либо полезного посыла не нашел
+2
Я своей целью обозначил обозначить примитивы добавления View на существующую разметку. Дело в том, что почти везде в основах графики говорится, что разметка не нужна при работе с графикой и все взаимодействия сводятся непосредственно к работе с классом, расширяющим View. Возможно, эта статья убережёт кого-то ещё от длительных поисков.
З.Ы. Либо я просто не умею гуглить, что также присуще не мне одному.
З.Ы. Либо я просто не умею гуглить, что также присуще не мне одному.
+1
В вашем случае в поисках надо было использовать слово «programmatically» ;-)
См. примеры: "android add view programmatically", "android create bitmap programmatically"
См. примеры: "android add view programmatically", "android create bitmap programmatically"
0
Если ваша задача рисовать графику — то стоит использовать SurfaceView и рисовать на его канвасе.
Если задача строить интерактивный интерфейс — используйте View.
Случаев, когда стоит писать своего наследника View, не так много, и на мой взгляд этого стоит избегать. Для их написание надо понимать системный фреймворк, когда, в каком порядке и в каком потоке вызываются методы (там далеко не только onDraw, там еще onLayout, onMeasure и т.д.)
Мне кажется статья ни о чем и может только подтолкнуть в неправильную сторону начинающих.
Я пишу довольно давно, а от класса View не наследовался ни разу (наследовался от более выскоуровневых элементов вроде ListView, когда их поведения не хватает).
Тут поведения никакого нет, поэтому и смысла кастомизировать нету. В крайнем случае можно создать в коде Bitmap, нарисовать на его канвасе треугольник и сунуть какому-нибудь ImageView. Это и то более правильный путь.
P.S. По нажатию на кнопку у ImageView можно заменить картинку быстрее и проще.
P.S.S. AddContentView использовать не понятно зачем, вы знаете куда в иерархию он добавит созданную View? Кто будет родителем и какие LayoutParams передавать?
Если задача строить интерактивный интерфейс — используйте View.
Случаев, когда стоит писать своего наследника View, не так много, и на мой взгляд этого стоит избегать. Для их написание надо понимать системный фреймворк, когда, в каком порядке и в каком потоке вызываются методы (там далеко не только onDraw, там еще onLayout, onMeasure и т.д.)
Мне кажется статья ни о чем и может только подтолкнуть в неправильную сторону начинающих.
Я пишу довольно давно, а от класса View не наследовался ни разу (наследовался от более выскоуровневых элементов вроде ListView, когда их поведения не хватает).
Тут поведения никакого нет, поэтому и смысла кастомизировать нету. В крайнем случае можно создать в коде Bitmap, нарисовать на его канвасе треугольник и сунуть какому-нибудь ImageView. Это и то более правильный путь.
P.S. По нажатию на кнопку у ImageView можно заменить картинку быстрее и проще.
P.S.S. AddContentView использовать не понятно зачем, вы знаете куда в иерархию он добавит созданную View? Кто будет родителем и какие LayoutParams передавать?
+2
Sign up to leave a comment.
Ещё немного о 2D графике под Android