Кто-нибудь может сказать, как добавить кнопку в android?
Как добавить кнопку в Android?
Ответ 1
Проверьте Android Button; этот простой пример создает кнопку Close.
Все, что вам нужно сделать, это:
Виджет кнопки 1.Add для вашего макета
<Button android:id="@+id/close"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="@string/title_close" />
2.Установите метод setOnClickListener экземпляру кнопки:
protected void onCreate(Bundle savedInstanceState) {
this.setContentView(R.layout.layoutxml);
this.closeButton = (Button)this.findViewById(R.id.close);
this.closeButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
Ответ 2
Динамический:
Button btn= new Button(this);
btn.settext("Submit");
btn.setOnClickListener(new View.OnClickListener()
{
public void onClick(View view)
{
//your write code
}
});
Ответ 3
Добавление кнопки
Button b1=(Button) findViewById(R.id.button1);
не добавляет кнопку. Он объявляет и инициализирует экземпляр Button, который ссылается на кнопку в текущем раздутом xml, который имеет идентификатор кнопки 1
Итак, в вашем xml вы бы где-нибудь
<Button
android:id="@+id/button1"
<!-- other properties -->
/>
Вы можете добавить кнопку программно с помощью
Button bt1 = new Button(this);
// give it properties
Но, как правило, это проще сделать в xml, потому что здесь вы должны программно дать ему параметры, свойства и добавить его в раздутый макет
OnClick
Что касается onClick(), это зависит от того, что вы считаете самым простым и лучшим в вашей ситуации. Мне нравится объявлять его в xml, как это часто, но вы можете сделать это несколькими способами. Используя этот метод, вы просто должны быть уверены, что у вас есть такая функция, которая является общедоступной и принимает только один параметр, и этот параметр должен быть View
public void clickEvent(View v)
{
// code here
}
Я также изменил имя, чтобы ваш xml был похож на
<Button
android:id="@+id/button1"
<!-- other properties -->
android:onClick="clickEvent"/>
Вы также можете установить onClick() в своей Java с чем-то вроде
Button b1=(Button) findViewById(R.id.button1);
b1.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
// code here
}
});
или
Button b1=(Button) findViewById(R.id.button1);
b1.setOnClickListener(this);
@Override
public void onClick(View v)
{
// code here
}
Обратите внимание, что последний способ, которым нужно добавить, добавляет OnClickListener в объявление активности
public class MyActivity extends Activity implements OnClickListener
{
Вы также можете создать свой собственный прослушиватель кликов, изменив его на что-то вроде
b1.setOnClickListener(myBtnClick);
затем создайте экземпляр с чем-то вроде
public OnClickListener myBtnClick = new OnClickListener()
{
@Override
public void onClick(View v)
{
// click code here
}
};
Вы можете использовать это для нескольких кнопок и включить идентификатор или проверить параметр "Вид", чтобы узнать, какая кнопка была нажата или создать отдельные прослушиватели для разных кнопок.
Ответ 4
Согласно официальной документации Кнопки, предоставленные Android.
Вы можете сначала создать кнопку в вашем файле .xml
.
Button.xml
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_text"
... />
И затем запустите свою кнопку с помощью класса кнопок и установите ClickListener.
Button button = (Button) findViewById(R.id.button_send);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Do something in response to button click
}
});
Для более подробной информации вы можете посетить ссылку