第一種點(diǎn)擊事件

創(chuàng)新互聯(lián)公司成都網(wǎng)站建設(shè)按需定制網(wǎng)站,是成都網(wǎng)站營(yíng)銷公司,為成都咖啡廳設(shè)計(jì)提供網(wǎng)站建設(shè)服務(wù),有成熟的網(wǎng)站定制合作流程,提供網(wǎng)站定制設(shè)計(jì)服務(wù):原型圖制作、網(wǎng)站創(chuàng)意設(shè)計(jì)、前端HTML5制作、后臺(tái)程序開(kāi)發(fā)等。成都網(wǎng)站制作熱線:028-86922220
在xml中設(shè)置onclick屬性
android:onClick="myOnclick"
第二種;獲取Button然后一個(gè)一個(gè)單獨(dú)綁定點(diǎn)擊事件
"
xmlns:tools=" "
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"?
android:id="@+id/btn_imgBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="myOnclick"
android:text="imageButton"
/
android:id="@+id/btn_imgView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="myOnclick"
android:text="imageView"
/
public class MainActivity extends ActionBarActivity {
private Button btnImageBtn;
private Button btnImageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
? ? super.onCreate(savedInstanceState);
? ? setContentView(R.layout.activity_main);
? ? btnImageBtn = (Button) findViewById(R.id.btn_imgBtn);
? ? btnImageView = ?(Button) findViewById(R.id.btn_imgView);
btnImageBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "點(diǎn)擊ImageButton", Toast.LENGTH_SHORT).show();
}
});
? ? btnImageView.setOnClickListener(new MyListener());
}
第三種:寫(xiě)一個(gè)類(MyListener)實(shí)現(xiàn)OnClickListener接口,然后Button在設(shè)置onclickListener的時(shí)候new一個(gè)MyListener
btnImageView.setOnClickListener(new MyListener());
class MyListener implements OnClickListener{
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_imgBtn:
Toast.makeText(MainActivity.this, "點(diǎn)擊ImageButton", Toast.LENGTH_SHORT).show();
break;
? ? ?case R.id.btn_imgView:
? ? ? Toast.makeText(MainActivity.this, "點(diǎn)擊imageView", Toast.LENGTH_SHORT).show();
break;
}?
第四種:整個(gè)類(MianActivity)實(shí)現(xiàn)onclickListener的接口
跳轉(zhuǎn)界面
Intent:意圖,用于訪問(wèn)android中的組件
用Intent跳轉(zhuǎn)界面(activity)
第一步:new一個(gè)Intent()
Intent intent1 = new Intent(MainActivity.this,ImageButtonActivity.class);
startActivity(intent1);
public void myOnclick(View view){
?switch (view.getId()) {
case R.id.btn_imgBtn:
Intent intent1 = new Intent(MainActivity.this,ImageButtonActivity.class);
startActivity(intent1);
break;
? ? case R.id.btn_imgView:
? ? ?Intent intent2 = new Intent(MainActivity.this,ImageViewActivity.class);
startActivity(intent2);
break;
Intent intent = new Intent(當(dāng)前的activity,跳轉(zhuǎn)到的acticvity.class);
startActivity(intent);
3.ImageView
展示方式:scaleType:
4.ImageButton:
觸摸事件:當(dāng)控件或者屏幕唄觸摸的時(shí)候,產(chǎn)生的反應(yīng)
public boolean onTouchEvent(MotionEvent event) {
}
imageButton:現(xiàn)在已經(jīng)唄button代替,用于展示圖片的按鈕。不能顯示文字。
imageView
scaleType:圖片展示的方式
fitStart:展示在控件的上方
fitCenter:展示在控件的中間
fitEnd;展示在控件的下方
fitXY:不按照比例拉伸
matrix:矩陣模式
matrix可以設(shè)置圖片旋轉(zhuǎn),縮放。移動(dòng)
獲取圖片的高度和寬度
int h = imgView.getDrawable().getIntrinsicHeight();
int w = imgView.getDrawable().getIntrinsicWidth();
Matrix m = new Matrix();
m.postRotate(45);
m.postRotate(45, w/2, h/2);
imgView.setImageMatrix(m);
移動(dòng)事件:
按下:MotionEvent.ACTION_DOWN
抬起:MotionEvent.ACTION_UP
移動(dòng):MotionEvent.ACTION_MOVE
獲取當(dāng)前的移動(dòng)事件,
event.getAction()
"
xmlns:tools=" "
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img_01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/ss"
android:scaleType="fitXY"/
android:id="@+id/img_02"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/gl"
android:visibility="gone"
android:scaleType="fitXY"/
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bird"
android:layout_gravity="center"
/
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="#ff0000"
android:gravity="center"
android:text="小鳥(niǎo)飛"/
public class MainActivity extends Activity {
private ImageView img01;
private ImageView img02;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
img01 = (ImageView) findViewById(R.id.img_01);
img02 = (ImageView) findViewById(R.id.img_02);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
//System.out.println("被摸了");
if(event.getAction()==MotionEvent.ACTION_UP){
Log.v("TAG", "被抬起來(lái)");
if(img01.getVisibility()==View.VISIBLE){
img01.setVisibility(View.GONE);
img02.setVisibility(View.VISIBLE);
}else{
img01.setVisibility(View.VISIBLE);
img02.setVisibility(View.GONE);
}
}else if(event.getAction()==MotionEvent.ACTION_DOWN){
Log.v("TAG", "被按下了");
}else if(event.getAction()==MotionEvent.ACTION_MOVE){
Log.v("TAG", "移動(dòng)了");
}
return super.onTouchEvent(event);
}
啟動(dòng)activity 可以使用InstrumentationTestCase
發(fā)送手機(jī)事件
Instrumentation.sendCharacterSync(KeyEvent.KEYCODE_DPAD_DOWN);
Instrumentation.sendCharacterSync(KeyEvent.KEYCODE_DPAD_CENTER);
使用android的測(cè)試功能,寫(xiě)一個(gè)類繼承InstrumentationTestCase
然后在這個(gè)類里獲得Instrumentation實(shí)例,通過(guò)它可以啟動(dòng)Activity,發(fā)送手機(jī)事件等
------------------------------------------------------
import android.app.Instrumentation;
import android.content.ContentResolver;
public class ActivityTest extends InstrumentationTestCase {
private Instrumentation mInst = null;
private ContentResolver mContentResolver = null;
@Override
protected void setUp() throws Exception {
super.setUp();
mInst = getInstrumentation();
mContentResolver = mInst.getContext().getContentResolver();
}
public void testStartActivity() throws Exception {
//launch activity
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
String activityPackagePath = "com.android.";
intent.setClassName(activityPackagePath, TargetActivity.getClass().getName());
TargetActivity mActivity = (TargetActivity) getInstrumentation().startActivitySync(intent);
mInst.waitForIdleSync();
//send keyevent to press button
mInst.sendCharacterSync(KeyEvent.KEYCODE_DPAD_DOWN);
mInst.sendCharacterSync(KeyEvent.KEYCODE_DPAD_CENTER);
mInst.waitForIdleSync();
}
}
通過(guò)setOnClickListener()來(lái)綁定單擊事件 例如:Button button = (Button) findViewById(R.id.button_id); button.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // Perform action on click //增加自己的代碼...... 例如下面的 final TextView text = (TextView) findViewById(R.id.textView1); text.setText("OnClick. " + " ...."); } });
當(dāng)前名稱:android按鈕點(diǎn)擊事件,安卓按鈕的觸發(fā)事件
網(wǎng)站URL:http://chinadenli.net/article22/dsgeccc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站排名、服務(wù)器托管、標(biāo)簽優(yōu)化、電子商務(wù)、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容