Проблемы преобразования Java в Android - PullRequest
1 голос
/ 12 октября 2011

У меня довольно сложный код Java (JDK 6), который необходимо преобразовать, чтобы он работал на Android.Этот код Java предназначен для работы с графикой: таким образом, у меня есть класс, который расширяет JLabel (компонент Swing), метод «paintComponent» изменяет форму, расширяет JLabel («обрезает» его, чтобы он выглядел как круг), и рисует его на экранезнаете, я знаю - я мог бы использовать метод come "drawCircle", но мне нужно расширить JLabel, потому что к нему прикреплено всплывающее меню).

Теперь у меня проблема - кажется, что Android не имеетТип «Графика», тип «Размер», тип «Прямоугольник», метод «paintComponent» и, в конце концов, я понятия не имею, какой элемент управления следует использовать для рисования этих настраиваемых JLabels (в JDK 6 я использовал JPanel, который был контейнеромдля тех, кто настроен JLabels).

Пожалуйста, помогите!Мне нужно несколько советов о том, что было бы наиболее безболезненным методом для преобразования данной логики Java в логику Android?

Ответы [ 3 ]

2 голосов
/ 12 октября 2011

Android предоставляет Графику и 2D-графику , используемую для рисования.

Посмотрите на Shape Drawable , которая должна помочь вам в рисованиипрямоугольники.Вместо JLabel используйте TextView .Вам придется потратить некоторое время на знакомство с Android и перерисовку графического интерфейса, но я надеюсь, что предоставил несколько хороших отправных точек.
Также обратите внимание, что в зависимости от сложности вашего кода вы не сможете использовать всю свою Javaкод, потому что Android не предоставляет полную версию Java.

1 голос
/ 12 октября 2011

AFAIK Android не поддерживает Swing, поэтому вам придется использовать эквивалентные классы пользовательского интерфейса Android. Классы пользовательского интерфейса Android не равны 1 к 1 с классами Swing, поэтому иногда порт Android означает, что вам нужно выполнить довольно сложную переписку пользовательского интерфейса.

0 голосов
/ 12 октября 2011

Android не имеет JLabel, поэтому вы не можете использовать этот код.

Вместо этого используйте TextView. Вы можете объявить TextView в XML или в коде Java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...