android之实现各个组件点击事件处理
2014-11-22 13:09
323 查看
android之实现各个组件点击事件处理:
注意:(TextView这个组件要点击产生效果的话,要设置,android:clickable="true"这个属性)
布局:layout/activity_main.xml
<LinearLayout 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:orientation="vertical">
<TextView
android:id="@+id/tv"
android:text="点击变字体颜色"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onClick"
android:clickable="true"
/>
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:onClick="onClick"
/>
<RadioGroup
android:id="@+id/rg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<RadioButton
android:id="@+id/rbMale"
android:text="男"
android:checked="true"
android:onClick="onClick"
/>
<RadioButton
android:id="@+id/rbfaMale"
android:text="女"
android:onClick="onClick"/>
<CheckBox
android:id="@+id/cbMale"
android:text="变男"
android:onClick="onClick"/>
<CheckBox
android:id="@+id/cbfaMale"
android:text="变女"
android:onClick="onClick"/>
</RadioGroup>
</LinearLayout>
java类:
package com.example.day03_01;
import android.support.v7.app.ActionBarActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.TextView;
public class MainActivity extends ActionBarActivity {
private RadioButton rbMale ;//初始化-----男
private RadioButton rbfaMale ;//初始化------女
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}
private void init(){//初始化 ----男,女
rbMale = (RadioButton) findViewById(R.id.rbMale);
rbfaMale = (RadioButton) findViewById(R.id.rbfaMale);
}
public void onClick(View v){
Log.i("main", v.getId()+"");
switch (v.getId()) {
case R.id.tv:
TextView tv = (TextView)v;
Log.i("main", tv.getText().toString());
tv.setTextColor(Color.RED);
break;
case R.id.iv:
ImageView iv = (ImageView)v;
iv.setImageResource(R.drawable.p01);
break;
case R.id.cbMale:
CheckBox cb = (CheckBox)v;
rbMale.setChecked(cb.isChecked());
rbfaMale.setChecked(!cb.isChecked());
break;
case R.id.cbfaMale:
CheckBox cbfa = (CheckBox)v;
rbMale.setChecked(!cbfa.isChecked());
rbfaMale.setChecked(cbfa.isChecked());
break;
}
}
}
效果:
注意:(TextView这个组件要点击产生效果的话,要设置,android:clickable="true"这个属性)
布局:layout/activity_main.xml
<LinearLayout 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:orientation="vertical">
<TextView
android:id="@+id/tv"
android:text="点击变字体颜色"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="onClick"
android:clickable="true"
/>
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
android:onClick="onClick"
/>
<RadioGroup
android:id="@+id/rg"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<RadioButton
android:id="@+id/rbMale"
android:text="男"
android:checked="true"
android:onClick="onClick"
/>
<RadioButton
android:id="@+id/rbfaMale"
android:text="女"
android:onClick="onClick"/>
<CheckBox
android:id="@+id/cbMale"
android:text="变男"
android:onClick="onClick"/>
<CheckBox
android:id="@+id/cbfaMale"
android:text="变女"
android:onClick="onClick"/>
</RadioGroup>
</LinearLayout>
java类:
package com.example.day03_01;
import android.support.v7.app.ActionBarActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.RadioButton;
import android.widget.TextView;
public class MainActivity extends ActionBarActivity {
private RadioButton rbMale ;//初始化-----男
private RadioButton rbfaMale ;//初始化------女
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}
private void init(){//初始化 ----男,女
rbMale = (RadioButton) findViewById(R.id.rbMale);
rbfaMale = (RadioButton) findViewById(R.id.rbfaMale);
}
public void onClick(View v){
Log.i("main", v.getId()+"");
switch (v.getId()) {
case R.id.tv:
TextView tv = (TextView)v;
Log.i("main", tv.getText().toString());
tv.setTextColor(Color.RED);
break;
case R.id.iv:
ImageView iv = (ImageView)v;
iv.setImageResource(R.drawable.p01);
break;
case R.id.cbMale:
CheckBox cb = (CheckBox)v;
rbMale.setChecked(cb.isChecked());
rbfaMale.setChecked(!cb.isChecked());
break;
case R.id.cbfaMale:
CheckBox cbfa = (CheckBox)v;
rbMale.setChecked(!cbfa.isChecked());
rbfaMale.setChecked(cbfa.isChecked());
break;
}
}
}
效果:
相关文章推荐
- android之实现各个组件点击事件处理
- android之实现各个组件点击事件处理
- android之实现各个组件点击事件监听
- android之实现各个组件点击事件监听
- android之实现各个组件点击事件监听
- Android 组件学习笔记(activity跳转,接口实现的点击事件)
- Android实现图文混排(2) 通过webview实现 并实现点击 图片处理事件
- android三档自定义滑动开关,禁止点击功能的实现,用默认的seekbar组件实现
- Android 四大组件之(3)BroadcastReceiver广播事件处理以及与Notification的配合使用详解
- android 组件内部实现触摸事件,更改背景
- Android View的点击事件导致文字颜色变化的实现原理
- Android开发中在ListView中经常有Item的点击事件及Button或ImageButton等需要被点击的事件之间的处理方法
- Android 组件学习【启发】 如何处理好多个组件的多个事件 收藏
- Android自定义TextView中的超链接点击事件处理
- Android自定义ViewGroup自动换行实现滑动任意布局及事件处理效果
- android 组件内部实现触摸事件,更改背景
- Android 中屏幕点击事件的实现
- Android面面观——Android事件处理下(按键、触摸屏和滚动球的一些实现细节
- Android 滑动侧边栏(Sliding Menu)第一种实现 - 2 手动滚动+自动滚动 + 事件处理
- Android graphics画图的点击事件处理