Android imagebutton with text

Xamarin.Forms ImageButton

Элемент ImageButton отображает изображение и реагирует на касание или щелчок, который направляет приложение для выполнения определенной задачи.

ImageButton Представление объединяет Button представление и Image представление для создания кнопки, содержимое которой является изображением. Пользователь нажимает ImageButton с помощью пальца или щелкает его с помощью мыши, чтобы направить приложение на выполнение определенной задачи. Однако, в отличие от Button представления, ImageButton представление не имеет концепции текста и внешнего вида текста.

Хотя в Button представлении определено Button свойство Xamarin_Forms _Button_Image «Data-=» Absolute-Path «> Image , которое позволяет отображать изображение в Button , это свойство предназначено для использования при отображении маленького значка рядом с Button текстом.

Примеры кода из этого руководств взяты из примера формсгаллери.

Задание источника изображения

ImageButton Определяет Source свойство, которое должно быть задано для изображения, отображаемого на кнопке, в качестве источника изображения — файл, URI, ресурс или поток. Дополнительные сведения о загрузке изображений из разных источников см. в разделе Images in Xamarin.Forms .

В следующем примере показано, как создать экземпляр ImageButton в XAML:

Source Свойство определяет изображение, которое отображается в ImageButton . В этом примере задается локальный файл, который будет загружен из каждого проекта платформы, в результате чего будут отображены следующие снимки экрана:

По умолчанию ImageButton является прямоугольным, но можно передать скругленные углы с помощью CornerRadius Свойства. Дополнительные сведения о ImageButton внешнем представлении см. в разделе ImageButton .

Хотя ImageButton может загрузить анимированный GIF-файл, он будет отображать только первый кадр GIF-файла.

В следующем примере показано, как создать страницу, которая функционально эквивалентна предыдущему примеру XAML, но полностью в C#:

Обработка щелчков ImageButton

ImageButton Определяет Clicked событие, возникающее при касании пользователем ImageButton пальцем или указателем мыши. Событие возникает при отпускании кнопки с пальцем или кнопкой мыши с поверхности ImageButton . Свойство должно иметь значение, равное, чтобы ImageButton IsEnabled true реагировать на касания.

В следующем примере показано, как создать экземпляр ImageButton в XAML и обменять его Clicked событие:

Clicked Для события задается обработчик событий с именем OnImageButtonClicked , который находится в файле кода программной части:

При касании ImageButton выполняется метод OnImageButtonClicked . sender Аргумент является ImageButton ответственным за это событие. Его можно использовать для доступа к ImageButton объекту или для различения нескольких объектов, ImageButton совместно использующих одно и то же Clicked событие.

Этот конкретный Clicked обработчик увеличивает счетчик и отображает значение счетчика в Label :

В следующем примере показано, как создать страницу, которая функционально эквивалентна предыдущему примеру XAML, но полностью в C#:

Отключение ImageButton

Иногда приложение находится в определенном состоянии, в котором конкретный ImageButton щелчок не является допустимой операцией. В таких случаях ImageButton следует отключить, задав IsEnabled свойству значение false .

Использование интерфейса команд

Приложение может реагировать на ImageButton касания без обработки Clicked события. ImageButton Класс реализует альтернативный механизм уведомления, называемый ImageButton или интерфейсом командной строки . Это состоит из двух свойств:

  • Command типа ICommand — интерфейс, определенный в System.Windows.Input пространстве имен.
  • CommandParameter свойство типа Object .
Читайте также:  Jawbone up для андроида

Этот подход подходит для связи с привязкой данных, особенно при реализации архитектуры Model-View-ViewModel (MVVM).

Дополнительные сведения об использовании интерфейса командной строки см . в разделеИспользование интерфейса команды в этой панели.

Нажатие и освобождение ImageButton

Помимо события Clicked ImageButton также определяет события Pressed и Released . Это Pressed событие возникает, когда палец нажимает на ImageButton , или кнопка мыши нажата с указателем, расположенным над ImageButton . Это Released событие возникает при отпускании кнопки мыши или пальца. Как правило, Clicked событие также срабатывает в то же время, что и Released событие, но если палец или указатель мыши выходят за пределы области ImageButton до выпуска, Clicked событие может не произойти.

Дополнительные сведения об этих событиях см. в разделе, посвященном нажатию и отпустите кнопкув данной панели .

Вид ImageButton

В дополнение к свойствам, ImageButton унаследованным от View класса, ImageButton также определяет несколько свойств, влияющих на его внешний вид:

  • Aspect показывает, как изображение будет масштабироваться в соответствии с отображаемой областью.
  • BorderColor цвет области, окружающей ImageButton .
  • BorderWidth Ширина границы.
  • CornerRadius Радиус угла ImageButton .

Aspect Свойству может быть присвоено одно из членов Aspect перечисления:

  • _Aspect_Fill «Data-ссылок =» Absolute-path «> Fill — растягивает изображение до полного и точного заполнения ImageButton . Это может привести к искажению изображения.
  • Xamarin_Forms _Aspect_AspectFill «Data-переадресная Категория =» абсолютный путь «> AspectFill — обрезает изображение таким образом, чтобы оно заполнило пропорции ImageButton .
  • Xamarin_Forms _Aspect_AspectFit «Data-леттербоксес =» Absolute-path «> AspectFit -изображение (при необходимости), чтобы весь изображение поместилось в ImageButton , с добавлением пробела в верхнюю, нижнюю или боковую часть в зависимости от того, имеет ли изображение ширину или высоту. Это значение перечисления по умолчанию Aspect .

Визуальные состояния ImageButton

ImageButton имеет объект Pressed VisualState , который можно использовать для инициации визуального изменения в ImageButton при нажатии пользователем, при условии, что он включен.

В следующем примере XAML показано, как определить визуальное состояние для Pressed состояния:

Pressed VisualState Указывает, что при ImageButton нажатии значения Pressed Свойства Xamarin_Forms _VisualElement_Scale «Data-Tab =» Absolute-Path >» Scale будет заменено значением по умолчанию от 1 до 0,8. Normal VisualState Указывает, что если ImageButton находится в нормальном состоянии, его Scale свойство будет установлено в значение 1. Таким образом, общий результат заключается в том, что при ImageButton нажатии кнопки она масштабируется немного меньше, а при ImageButton освобождении она масштабируется до размера по умолчанию.

Источник

Android Image Button with Text Example | Java & Kotlin

Up next

Activity life cycle in Android | Illustrated using FlowChart
Share article
What’s in this blog? Hide

Android Image Button with Text Example in both Java and Kotlin. In this blog learn how to create an Image Button with text in Android Studio using XML code.

Though we have a widget in Android Studio known as Android ImageButton, but an ImageButton can’t have an image and a text together.

So if you’re building an app where you want to show the user the image and text both on a button, there is a smarter way to achieve the result as shown below using a RelativeLayout in Android.

Understanding Image Button Layout

To create a custom image button with a text we will create a relative layout with a custom background. Inside the relative layout, there will be an ImageView and a textView widget.

Читайте также:  Чистильщики для андроид тв бокс

Creating a custom background for Button

We will first start with crating a custom background for our image button. Here is the XML code to create custom background.

Android Image Button (XML Code)

Now lets code the android image button with textView inside it.

As you can interpret from the code above, we have used an android relative layout inside which we have an ImageView and a TextView both together formaing an Image Button for our project.

Custom Image Button Java Code

Here is an OnClickListener Java Code for our custom image button

Custom Image Button Kotlin Code

Here is an OnClickListener Kotlin Code for our custom image button

TaDa! That’s all. You’re done with creating your own Custom Image Button for your Android Project.

However, if you want to add a custom more styling like a gradient effect to your image button, view here.

Is Relative Layout something new to you or you want to refresh your knowledge about it? You can View some of our more detailed tutorial with illustrations about Relative Layout here.

Источник

Android — ImageButton Control

An ImageButton is an AbsoluteLayout which enables you to specify the exact location of its children. This shows a button with an image (instead of text) that can be pressed or clicked by the user.

Android button style set

ImageButton Attributes

Following are the important attributes related to ImageButton control. You can check Android official documentation for complete list of attributes and related methods which you can use to change these attributes are run time.

Inherited from android.widget.ImageView Class −

Set this to true if you want the ImageView to adjust its bounds to preserve the aspect ratio of its drawable.

This is the offset of the baseline within this view.

If true, the image view will be baseline aligned with based on its bottom edge.

If true, the image will be cropped to fit within its padding.

This sets a drawable as the content of this ImageView.

Inherited from android.view.View Class −

Sr.No Attribute & Description
1

This is a drawable to use as the background.

This defines text that briefly describes content of the view.

This supplies an identifier name for this view

This is the name of the method in this View’s context to invoke when the view is clicked.

This controls the initial visibility of the view.

Example

This example will take you through simple steps to show how to create your own Android application using Linear Layout and ImageButton.

Sr.No Attribute & Description
1
Step Description
1 You will use Android studio IDE to create an Android application and name it as myapplication under a package com.example.myapplication as explained in the Hello World Example chapter.
2 Modify src/MainActivity.java file to add a click event.
3 Modify the default content of res/layout/activity_main.xml file to include Android UI control.
4 No need to define default constants in android, Android studio takes care of default constants.
5 Run the application to launch Android emulator and verify the result of the changes done in the application.

Following is the content of the modified main activity file src/com.example.myapplication/MainActivity.java. This file can include each of the fundamental lifecycle methods.

In the below example abc indicates the image of tutorialspoint

Following will be the content of res/layout/activity_main.xml file −

Following will be the content of res/values/strings.xml to define these new constants −

Following is the default content of AndroidManifest.xml

Let’s try to run your myapplication application. I assume you had created your AVD while doing environment setup. To run the app from Android Studio, open one of your project’s activity files and click Run icon from the toolbar. Android Studio installs the app on your AVD and starts it and if everything is fine with your setup and application, it will display following Emulator window −

The following screen will appear after ImageButton is clicked,It shows a toast message.

Exercise

I will recommend to try above example with different attributes of ImageButton in Layout XML file as well at programming time to have different look and feel of the ImageButton. Try to make it editable, change to font color, font family, width, textSize etc and see the result. You can also try above example with multiple ImageButton controls in one activity.

Источник

ImageButton (Кнопка-изображение)

Общая информация

Находится в разделе Buttons.

Компонент ImageButton представляет собой кнопку с изображением (вместо текста). По умолчанию ImageButton похож на обычную кнопку.

В режиме дизайна изображение на кнопке определяется атрибутом android:src

Можно сделать двойной щелчок, чтобы сразу установить нужное свойство.

Методы

Программно можно установить изображения через различные методы.

setImageBitmap() Используется, чтобы указать в качестве изображения существующий экземпляр класса Bitmap setImageDrawable() Используется, чтобы указать в качестве изображения существующий экземпляр класса Drawable setImageResource() Используется, чтобы указать в качестве изображения существующий идентификатор ресурса (см. пример) setImageURI() Используется, чтобы указать в качестве изображения существующий адрес типа Uri. В некоторых случаях элемент кэширует изображение и после изменения изображения по прежнему выводит старую версию. Рекомендуется использовать инструкцию setImageURI(null) для сброса кэша и повторный вызов метода с нужным Uri

Примеры

С помощью метода setImageURI() можно обратиться к ресурсу типа Drawable по его идентификатору:

Например, можно задать путь Uri:

Можно обратиться к ресурсу по его типу/имени:

В этом случае код будет следующим:

Щелчок

Как и у обычной кнопки, интерес представляет только щелчок. В нашем примере мы будем менять поочередно картинки на кнопке (нужно подготовить две картинки в папке drawable)

Теперь при каждом щелчке изображение на кнопке будет циклически переключаться между двумя картинками.

Продолжительное нажатие

Кроме обычного щелчка, в Android есть особый вид нажатия на кнопку — продолжительное нажатие. Это событие происходит, когда пользователь нажимает и удерживает кнопку в течение одной секунды. Этот тип нажатия обрабатывается независимо от обычного щелчка.

Для обработки продолжительного нажатия нужно реализовать класс View.OnLongClickListener и передать его в метод setOnLongClickListener(). Класс OnLongClickListener имеет один обязательный метод OnLongClick(). В принципе это похоже на метод OnClick(), только имеет возвращаемое значение.

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

Источник

Читайте также:  Image viewer android studio
Оцените статью