Most visited

Recently visited

Added in API level 1

Button

public class Button
extends TextView

java.lang.Object
   ↳ android.view.View
     ↳ android.widget.TextView
       ↳ android.widget.Button
Known Direct Subclasses
Known Indirect Subclasses


代表一个按钮小部件。 用户可以按下按钮或点击按钮来执行操作。

活动中按钮的典型用法如下:

 public class MyActivity extends Activity {
     protected void onCreate(Bundle icicle) {
         super.onCreate(icicle);

         setContentView(R.layout.content_layout_id);

         final Button button = (Button) findViewById(R.id.button_id);
         button.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 // Perform action on click
             }
         });
     }
 }

但是,不要将OnClickListener应用于活动中的按钮,您可以使用android:onClick属性将方法分配给XML布局中的按钮。 例如:

 <Button
     android:layout_height="wrap_content"
     android:layout_width="wrap_content"
     android:text="@string/self_destruct"
     android:onClick="selfDestruct" />

现在,当用户点击按钮时,Android系统会调用该活动的方法selfDestruct(View) 为了使其发挥作用,该方法必须公开并接受View作为其唯一参数。 例如:

 public void selfDestruct(View view) {
     // Kabloey
 }

传入该方法的 View是对被点击的小部件的引用。

Button style

每个按钮都使用系统的默认按钮背景进行设计,每个按钮的背景通常因设备而异,平台的版本也不同。 如果您对默认按钮样式不满意,并且想要对其进行自定义以匹配应用程序的设计,则可以用state list drawable替换该按钮的背景图像。 可绘制的状态列表是一种在XML中定义的可绘制资源,它根据按钮的当前状态更改其图像。 一旦定义了可用XML绘制的状态列表,就可以将它应用于带有android:background属性的按钮。 有关更多信息和示例,请参阅State List Drawable

请参阅 Buttons指南。

XML属性

Button AttributesTextView AttributesView Attributes

Summary

Inherited XML attributes

From class android.widget.TextView
From class android.view.View

Inherited constants

From class android.view.View

Inherited fields

From class android.view.View

Public constructors

Button(Context context)
Button(Context context, AttributeSet attrs)
Button(Context context, AttributeSet attrs, int defStyleAttr)
Button(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)

Public methods

CharSequence getAccessibilityClassName()

返回此对象的类名称以用于辅助功能。

Inherited methods

From class android.widget.TextView
From class android.view.View
From class java.lang.Object
From interface android.view.ViewTreeObserver.OnPreDrawListener
From interface android.graphics.drawable.Drawable.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.accessibility.AccessibilityEventSource

Public constructors

Button

Added in API level 1
Button (Context context)

Parameters
context Context

Button

Added in API level 1
Button (Context context, 
                AttributeSet attrs)

Parameters
context Context
attrs AttributeSet

Button

Added in API level 1
Button (Context context, 
                AttributeSet attrs, 
                int defStyleAttr)

Parameters
context Context
attrs AttributeSet
defStyleAttr int

Button

Added in API level 21
Button (Context context, 
                AttributeSet attrs, 
                int defStyleAttr, 
                int defStyleRes)

Parameters
context Context
attrs AttributeSet
defStyleAttr int
defStyleRes int

Public methods

getAccessibilityClassName

Added in API level 23
CharSequence getAccessibilityClassName ()

返回此对象的类名称以用于辅助功能。 如果子类正在实现的东西应该被视为一个全新的视图类,当它被可访问性使用时,子类只应该覆盖这个子类,与它所源自的类无关。 这用于填写AccessibilityNodeInfo.setClassName

Returns
CharSequence

Hooray!