Pages

Thứ Ba, 18 tháng 6, 2019

Interface OnClickListener

Kế thừa Interface OnClickListener 

Ở đây thì Activity sẽ kế thừa interface OnClickListener, interface này phương thức onClick sẽ có nhiệm vụ là lắng nghe các sự kiện click vào View, nếu có phương thức này sẽ được gọi đến.

Định nghĩa nút Button ở xml như sau:

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"      xmlns:tools="http://schemas.android.com/tools"      android:layout_width="match_parent"      android:layout_height="match_parent"      android:paddingBottom="@dimen/activity_vertical_margin"      android:paddingLeft="@dimen/activity_horizontal_margin"      android:paddingRight="@dimen/activity_horizontal_margin"      android:paddingTop="@dimen/activity_vertical_margin"      tools:context="hiepsiit.com.MainActivity" >           <Button          android:id="@+id/btnLogin"          android:layout_width="wrap_content"          android:layout_height="wrap_content"                  android:layout_marginLeft="14dp"          android:layout_marginTop="57dp"          android:text="Login" />        <Button          android:id="@+id/btnLogout"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:layout_alignBaseline="@+id/btnLogin"          android:layout_alignBottom="@+id/btnLogin"          android:layout_marginLeft="33dp"          android:layout_toRightOf="@+id/btnLogin"          android:text="Logout" />    </RelativeLayout>

Sau đó ở MainActivity bạn sẽ implement interface OnClickListener và override lại phương thức onClick của interface này:

  public class MainActivity extends Activity implements OnClickListener

Thêm phương thức onClick bạn rê chuột vào MainActivity sau đó add unimlemented methods:

Phương thức onClick :

  @Override  	public void onClick(View v) {  		// TODO Auto-generated method stub  		// Lấy id từng button  		switch(v.getId()){  		case R.id.btnLogin:  			// Hiện thị thông báo trong vòng vài giây  			Toast.makeText(getApplication(), "Hiệp Sĩ IT: Bạn đang Click vào Button Login", Toast.LENGTH_LONG).show();  			break;  		case R.id.btnLogout:  			Toast.makeText(getApplication(), "Hiệp Sĩ IT: Bạn đang Click vào Button Logout", Toast.LENGTH_LONG).show();  			break;  		}  		  	}

Xử lý sự kiện cho 2 Button trong phương thức onCreate:

  	@Override  	protected void onCreate(Bundle savedInstanceState) {  		super.onCreate(savedInstanceState);  		setContentView(R.layout.activity_main);  		btnLogin	= (Button)findViewById(R.id.btnLogin);  		btnLogout	= (Button)findViewById(R.id.btnLogout);  		//Xử lý sự kiện cho 2 button  		btnLogin.setOnClickListener(this);  		btnLogout.setOnClickListener(this);  	}

Toàn bộ code trong MainActivity.java:

  package hiepsiit.com;    import android.app.Activity;  import android.os.Bundle;  import android.view.Menu;  import android.view.MenuItem;  import android.view.View;  import android.view.View.OnClickListener;  import android.widget.Button;  import android.widget.Toast;    public class MainActivity extends Activity implements OnClickListener {  	Button btnLogin, btnLogout;    	@Override  	protected void onCreate(Bundle savedInstanceState) {  		super.onCreate(savedInstanceState);  		setContentView(R.layout.activity_main);  		btnLogin	= (Button)findViewById(R.id.btnLogin);  		btnLogout	= (Button)findViewById(R.id.btnLogout);  		//Xử lý sự kiện cho 2 button  		btnLogin.setOnClickListener(this);  		btnLogout.setOnClickListener(this);  	}  	@Override  	public void onClick(View v) {  		// TODO Auto-generated method stub  		// Lấy id từng button  		switch(v.getId()){  		case R.id.btnLogin:  			// Hiện thị thông báo trong vòng vài giây  			Toast.makeText(getApplication(), "Hiệp Sĩ IT: Bạn đang Click vào Button Login", Toast.LENGTH_LONG).show();  			break;  		case R.id.btnLogout:  			Toast.makeText(getApplication(), "Hiệp Sĩ IT: Bạn đang Click vào Button Logout", Toast.LENGTH_LONG).show();  			break;  		}  		  	}  	  }

Download ví dụ

Ứng dụng này được phát triển bởi adt bundleandroid 4.2 sử dụng minimum sdk 11  and target sdk 21.


Kết quả khi click vào button Login:

Kết quả khi click vào button Logout:



Cập nhật công nghệ từ Youtube tại link: https://www.youtube.com/channel/UCOxeYcvZPGf-mGLYSl_1LuA/videos
Để tham gia khóa học công nghệ truy cập link: http://thuvien.hocviendaotao.com
Mọi hỗ trợ về công nghệ email: dinhanhtuan68@gmail.com