80,493
社区成员
发帖
与我相关
我的任务
分享
public class EyesText extends Activity {
//textValue是从里一个activity中得到的,bitmap也是一样~~~要是要调代码的话,自己随便给个值就可以了
private Bitmap bitmap,textBitmap;
private ImageView imageViewForText,textImage;
private Button addTextButton;
private String textValue=null;
float mx,my;
private int screenX,screenY;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
Intent intent =getIntent();
textValue=intent.getStringExtra("addText");
DisplayMetrics dm= new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
screenX=dm.widthPixels;
screenY=dm.heightPixels;
setContentView(R.layout.eyestext);
mx=bitmap.getWidth()/2;
my=bitmap.getHeight()/2;
imageViewForText=(ImageView)findViewById(R.id.eyestext_imageview);
imageViewForText.setImageBitmap(bitmap);
addTextButton=(Button)findViewById(R.id.eyestext_addtext);
addTextButton.setOnClickListener(addTextButtonClickListener);
}
private View.OnClickListener addTextButtonClickListener = new View.OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent();
Bundle bundle=new Bundle();
bundle.putString("testValue",textValue);
intent.putExtras(bundle);
intent.setClass(EyesText.this, EyesTextDialog1.class);
startActivityForResult(intent,1);
}
};
protected void onActivityResult(int requestCode, int resultCode,
Intent data){
switch (resultCode){
case RESULT_OK:
Bundle b = data.getExtras();
textValue= b.getString("addtextValue");
Log.i("addTextValue--------------------->",textValue);
imageViewForText.setImageBitmap(addText());
}
}
private Bitmap addText(){
Bitmap newb = Bitmap.createBitmap( bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888 );
Canvas canvasTemp = new Canvas( newb );
canvasTemp.drawColor(Color.TRANSPARENT);
Paint p = new Paint();
//Typeface font=Typeface.createFromAsset(getAssets(), m_Type[type]);
//p.setColor(m_Color[color]);
//p.setTypeface(font);
p.setTextSize(30);
canvasTemp.drawBitmap(bitmap, 0, 0, null);
canvasTemp.drawText(textValue,mx,my,p);
Log.i("图片移动mx---------->"," "+mx);
Log.i("图片移动my---------->"," "+my);
return newb;
}
public boolean onTouchEvent(MotionEvent event){
float x= event.getX();
float y= event.getY();
Log.i("点击屏幕mx---------->"," "+mx);
Log.i("点击屏幕my---------->"," "+my);
mx=x;
my=y;
try{
switch(event.getAction())
{
case MotionEvent.ACTION_DOWN:
imageViewForText.setImageBitmap(addText());
//movePic(mx,my);
break;
case MotionEvent.ACTION_MOVE:
imageViewForText.setImageBitmap(addText());
//movePic(mx,my);
break;
case MotionEvent.ACTION_UP:
imageViewForText.setImageBitmap(addText());
//movePic(mx,my);
break;
}
}
catch(Exception e){
Log.i("error--------->MotionEvent","---------->MotionEvetn_faild");
e.printStackTrace();
}
return true;
}
}