android自定义按钮

1》定义按钮布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
androidrientation="horizontal"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
>
<ImageView
android:id="@+id/iconMoney"
android:layout_width="25dp"
android:layout_height="fill_parent"
>
</ImageView>
<TextView
android:id="@+id/numMeoney"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center"
android:text="4444"
android:textSize="20dp"
android:layout_marginTop="0dp"
android:layout_marginBottom="3dp"
android:layout_marginLeft="8dp"
>
</TextView>
<ImageView
android:layout_marginLeft="5dp"
android:id="@+id/iconAdd"
android:layout_width="25dp"
android:layout_height="fill_parent"
>
</ImageView>
</LinearLayout>


2》继承布局文件

package com.widget;

import android.content.Context;
import android.graphics.Bitmap;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.dreamplanegames.R;

public class MoneyView extends LinearLayout {

private ImageView iconMoney;
private TextView textView;

private ImageView Addmoney;

public MoneyView(Context context,AttributeSet attributeSet) {
super(context, attributeSet);
LayoutInflater.from(context).inflate(R.layout.money, this,true);//指定布局

this.iconMoney = (ImageView)findViewById(R.id.iconMoney);
this.textView = (TextView)findViewById(R.id.numMeoney);
this.Addmoney=(ImageView)findViewById(R.id.iconAdd);

this.setClickable(true);//可以点击
this.setFocusable(true);
}


//设置控件内容
public void setText(String text) {
this.textView.setText(text);
}

public void setTextColor(int color) {
this.textView.setTextColor(color);
}

public void setTextSize(float size) {
this.textView.setTextSize(size);
}

public void setImg(Bitmap img1,Bitmap img2) {
this.iconMoney.setImageBitmap(img1);
this.Addmoney.setImageBitmap(img2);
//this.yes.setImageBitmap(img2);
}

}


3》控件的调用

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
androidrientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<ImageView android:id="@+id/mainMenuImage"
android:src="@drawable/xk_bg2"
android:scaleType="fitXY"
android:layout_width="match_parent"
android:layout_height="match_parent">
</ImageView>
//调用自定义控件
<com.widget.MoneyView--------------------类名
android:layout_width="wrap_content"
android:layout_height="30dp"
android:id="@+id/btnMoney"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="20dp"
android:layout_marginLeft="20dp"
>
</com.widget.MoneyView>

</RelativeLayout>


4》到相应的activity调用
public class SFMainMenu extends Activity implements View.OnClickListener
{
public MoneyView moneyview;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置全屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
//去除应用程序标题
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//设置竖屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.main);

//获取自定义按钮
moneyview=(MoneyView)findViewById(R.id.btnMoney);

//调用自定义控件的函数设置控件内容
moneyview.setImg(BitmapFactory.decodeResource(getResources(), R.drawable.money),BitmapFactory.decodeResource(getResources(), R.drawable.add));
moneyview.setText(""+myPointBalance);

//自定义按钮响应事件
moneyview.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}
});


}
//返回键
@Override
public void onBackPressed() {
super.onBackPressed();

}

}



更多相关文章

  1. QQ侧滑删除分享(工具类)
  2. android 监听判断软键盘的弹出、隐藏状态
  3. Android二个按钮Dialog对话框
  4. Android(安卓)计算控件尺寸
  5. Android(安卓)调用浏览器,打开网页
  6. BaseAdapter
  7. Android(安卓)Spinner控件的简单应用
  8. android软键盘的显示与隐藏
  9. Android(安卓)Button

随机推荐

  1. android左右滑动翻页查看图片
  2. Android读写文件示例
  3. android custom viewgroups 性能分析
  4. Android(安卓)valueAnimator和ObjectAnim
  5. Android中Broadcast的Intent大全
  6. Android涂鸦
  7. Android创建文件夹及文件并写入数据
  8. Android(安卓)studio 点击跳转WedView
  9. android SQLite的CRUD
  10. Android(安卓)动态更改Shape(GradientDraw