Header ads

Header ads
» » Sử dụng biến

Sử dụng biến (Event Listener using Variable)

Cách này là một kiểu khác của cách 3 thôi chứ không có gì đặc biệt thay vì bạn implement interface thì ở đây bạn sẽ tạo thẳng một biến thuộc interface đó rồi set sự kiện cho biến đó lắng nghe các event từ View.

Định nghĩa 2 button trong tập tin xml:

  <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>

Chúng ta khai báo biến onClick trong tập Java:

  //khai báo biến onClick tại đây  	OnClickListener onClick = new OnClickListener() {  		  		@Override  		public void onClick(View v) {  			// TODO Auto-generated method stub  			if(v==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();  			else if(v==btnLogout)  				// 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 Logout", Toast.LENGTH_LONG).show();  				  		}  	};

Gọi biến onClick trong tập tin Java:

  //khai báo biến onClick tại đây  	OnClickListener onClick = new OnClickListener() {  		  		@Override  		public void onClick(View v) {  			// TODO Auto-generated method stub  			if(v==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();  			else if(v==btnLogout)  				// 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 Logout", Toast.LENGTH_LONG).show();  				  		}  	};

Toàn bộ source trong tập tin 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 {  	Button btnLogin, btnLogout;  	//khai báo biến onClick tại đây  	OnClickListener onClick = new OnClickListener() {  		  		@Override  		public void onClick(View v) {  			// TODO Auto-generated method stub  			if(v==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();  			else if(v==btnLogout)  				// 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 Logout", Toast.LENGTH_LONG).show();  				  		}  	};  	@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);  		// Truyền biến onClick ở trên cho từng phương thức  		btnLogin.setOnClickListener(onClick);  		btnLogout.setOnClickListener(onClick);  	}    	@Override  	public boolean onCreateOptionsMenu(Menu menu) {  		// Inflate the menu; this adds items to the action bar if it is present.  		getMenuInflater().inflate(R.menu.main, menu);  		return true;  	}    	@Override  	public boolean onOptionsItemSelected(MenuItem item) {  		// Handle action bar item clicks here. The action bar will  		// automatically handle clicks on the Home/Up button, so long  		// as you specify a parent activity in AndroidManifest.xml.  		int id = item.getItemId();  		if (id == R.id.action_settings) {  			return true;  		}  		return super.onOptionsItemSelected(item);  	}  }  

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

About Học viện đào tạo trực tuyến

Xinh chào bạn. Tôi là Đinh Anh Tuấn - Thạc sĩ CNTT. Email: dinhanhtuan68@gmail.com .
- Nhận đào tạo trực tuyến lập trình dành cho nhà quản lý, kế toán bằng Foxpro, Access 2010, Excel, Macro Excel, Macro Word, chứng chỉ MOS cao cấp, IC3, tiếng anh, phần mềm, phần cứng .
- Nhận thiết kế phần mềm quản lý, Web, Web ứng dụng, quản lý, bán hàng,... Nhận Thiết kế bài giảng điện tử, số hóa tài liệu...
HỌC VIỆN ĐÀO TẠO TRỰC TUYẾN:TẬN TÂM-CHẤT LƯỢNG.
«
Next
Bài đăng Mới hơn
»
Previous
Bài đăng Cũ hơn