기록 학습 :
우리는 효과를 원하는 , 작은 메시지 상자를 팝업 , 몇 초 후에 자동으로 사라
새로운 인프라 프로젝트를 만듭니다
에서 MainActivity 다음과 같은 내용을 추가합니다 :
com.example.reactest 패키지;
수입 androidx.appcompat.app.AppCompatActivity;
수입 android.os.Bundle;
수입 android.view.View에서;
수입 android.widget.Button;
수입 android.widget.Toast;
공용 클래스 MainActivity는 AppCompatActivity를 {확장
// 하향 호환 활동 상기 AppCompatActivity가 인 활동 서브 활동 이다 안드로이드 시스템은베이스 클래스 이벤트를 제공한다
@우세하다
보호 공간에서 onCreate (번들 savedInstanceState) {
super.onCreate (savedInstanceState);
/ *
* 들어오는 레이아웃 레이아웃로드 ID를 R.layout.activity_main
*
* * /
된 setContentView (R.layout.activity_main);
/ *
* 바이 버튼 트리거 토스트 의해 에서 onCreate 코드를 추가 방법
* 내지 제 findViewById를 ()이 얻어 buttonPanel 소자의 동작 예 : findViewById를 (R.id.buttonPanel)를;
* 이 방법은 반환 이후 뷰 객체를 , 필요 낙심이 될 버튼 객체
* 다운 캐스트 : 낙심 : 부모 클래스의 객체에 하위 클래스 참조 아버지 F1 = 새 아들 (); // 이라고 upcasting (업 캐스팅 ) , 지금 F1 참조합니다에 아들의 객체
* 업 캐스팅 : 상위 클래스의 서브 클래스 객체에 대한 참조 인자 S1 = (SON) F1] // 이 호출 (downcasting 하향 전환 ) 현재 F1이 가리키는 아들 개체
* * /
버튼 button_Panel = (버튼) findViewById를 (R.id.buttonPanel);
/ *
* 와 setOnClickListener () 이 청취자의 인스턴스 등록 OnClickListener를 ()을 하지만 문 사용 View.OnClickListener ()를
* 프런트 추가 할 이유 보기 그것의를, 이유는 뒤에 OnClickListener를 보기 클래스 인터페이스 내부는,이 인터페이스의 직접 사용이 발견되지 않는 경우.
* * /
button_Panel.setOnClickListener (새 View.OnClickListener () {
/ *
* 모니터를 만들어 , 받는 듣는 경우 실행할 버튼을 클릭 ) (onclick을 방법 , 그래서
* 토스트 받는 기능 온 클릭 () 기록 .
* * /
@우세하다
공공 무효의 onclick (보기 V) {
/ *
* 우리는 효과를 원하는 , 작은 메시지 상자를 팝업 , 몇 초 후에 자동으로 사라
* 아이디어 : 텍스트 상자 , 타이머 , 레이아웃 위치 . 표시 방법
* 정적 메소드 makeText ()는 크리에이트하는 토스트 개체 , 부르는 쇼 () 토스트 표시 .
* 说明: makeText(参数一[Toast要求的上下文 ], 参数二[Toast显示的文本内容], 参数三[Toast显示的时长])
* 参数一: Context,由于i活动本身就是一个Context对象,因此直接传入 MainActivity.this
* 参数二: 内容
* 参数三: 有两个内置常量 Toast.LENGTH_SHORT Toast.LENGTH_LONG
*
* 引用结束之后记得用 show()方法显示
* */
Toast.makeText(MainActivity.this,"你好啊",Toast.LENGTH_SHORT).show();
}
});
}
}
在布局视图下添加:
<?xml version="1.0" encoding="utf-8"?>
function(){ //交易杠杆 http://www.fx61.com/definitions/muniu/481.html
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<!-- 只要创建任何资源都会在R文件中生成一个资源id
在引用布局的时候会调用R.layout.(Activity)可以得到XXXX.xml布局中的id,然后将这个值传到setContentVies()方法即可-->
<!-- wrap_content 当前宽度只要刚好包含里边的内容就行-->
<!-- match_parent 当前元素和父元素一样宽 相配,相称 -->
<Button
android:id="@+id/buttonPanel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="1"
tools:ignore="MissingConstraints" />
<!-- 通过button触发Toast 通过onCreate方法中添加代码-->
</androidx.constraintlayout.widget.ConstraintLayout>