当前位置: 编程技术>移动开发
本页文章导读:
▪关于drawText文字正中的山寨做法 关于drawText文字居中的山寨做法
drawText画字符串是底端对齐的。所以要特别注意这点,不然画文字可能画到其它地方而误以为没有画出来。
如果底端对齐的话:底端的Y坐标.........
▪ (转)view的gettag跟settag (转)view的gettag和settag
写一个自定义的Adapter用来绑定ListView,在重写getView的时候发现网上参考代码有用到setTag()和getTag()两个函数,百度找不到答案,google一搜就知道了,:PView中的setTag(Onbect.........
▪ Log分析课程及Gallery uc menubar例子 Log分析教程及Gallery uc menubar例子
[Android实例]
【Sundy系列】网上绝无仅有的Log分析教程及例子!
一个gallery写的类似UC桌面的menubar
......
[1]关于drawText文字正中的山寨做法
来源: 互联网 发布时间: 2014-02-18
关于drawText文字居中的山寨做法
drawText画字符串是底端对齐的。所以要特别注意这点,不然画文字可能画到其它地方而误以为没有画出来。
如果底端对齐的话:底端的Y坐标是:(行高-字体高度)/2+字体高度 ,但是字符串并不居中,经过测试如果:(行高-字体高度)/2+字体高度-6 ,就稍微居中了一点。
以上的方法只是一个取巧的做法,网上也没有找到设置文字居中的方法。
如果你有看到标准的做法,请共享。。。
1 楼
csj2017
2011-12-07
默认的应该不是底对齐吧!是baseLine对齐,离底端有段距离,所以按上面办法会有误差。加上那段距离应该就行了:
FontMetrics fontMetrics = mPaint.getFontMetrics();
float fontTotalHeight = fontMetrics.bottom - fontMetrics.top;
float offY = fontTotalHeight / 2 - fontMetrics.bottom;
float newY = baseY + offY;
canvas.drawText(text, baseX, newY, paint);
FontMetrics fontMetrics = mPaint.getFontMetrics();
float fontTotalHeight = fontMetrics.bottom - fontMetrics.top;
float offY = fontTotalHeight / 2 - fontMetrics.bottom;
float newY = baseY + offY;
canvas.drawText(text, baseX, newY, paint);
[2] (转)view的gettag跟settag
来源: 互联网 发布时间: 2014-02-18
(转)view的gettag和settag
写一个自定义的Adapter用来绑定ListView,在重写getView的时候发现网上参考代码有用到setTag()和getTag()两个函数,百度找不到答案,google一搜就知道了,:P
View中的setTag(Onbect)表示给View添加一个格外的数据,以后可以用getTag()将这个数据取出来。
可以用在多个Button添加一个监听器,每个Button都设置不同的setTag。这个监听器就通过getTag来分辨是哪个Button 被按下。
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button1 = (Button) findViewById(R.id.Button01);
Button button2 = (Button) findViewById(R.id.Button02);
Button button3 = (Button) findViewById(R.id.Button03);
Button button4 = (Button) findViewById(R.id.Button04);
MyListener listener = new MyListener();
button1.setTag(1);
button1.setOnClickListener(listener);
button2.setTag(2);
button2.setOnClickListener(listener);
button3.setTag(3);
button3.setOnClickListener(listener);
button4.setTag(4);
button4.setOnClickListener(listener);
}
public class MyListener implements View.OnClickListener {
@Override
public void onClick(View v) {
int tag = (Integer) v.getTag();
switch (tag) {
case 1:
System.out.println("button1 click");
break;
case 2:
System.out.println("button2 click");
break;
case 3:
System.out.println("button3 click");
break;
case 4:
System.out.println("button4 click");
break;
}
}
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/herryz/archive/2011/02/18/6193844.aspx
写一个自定义的Adapter用来绑定ListView,在重写getView的时候发现网上参考代码有用到setTag()和getTag()两个函数,百度找不到答案,google一搜就知道了,:P
View中的setTag(Onbect)表示给View添加一个格外的数据,以后可以用getTag()将这个数据取出来。
可以用在多个Button添加一个监听器,每个Button都设置不同的setTag。这个监听器就通过getTag来分辨是哪个Button 被按下。
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button1 = (Button) findViewById(R.id.Button01);
Button button2 = (Button) findViewById(R.id.Button02);
Button button3 = (Button) findViewById(R.id.Button03);
Button button4 = (Button) findViewById(R.id.Button04);
MyListener listener = new MyListener();
button1.setTag(1);
button1.setOnClickListener(listener);
button2.setTag(2);
button2.setOnClickListener(listener);
button3.setTag(3);
button3.setOnClickListener(listener);
button4.setTag(4);
button4.setOnClickListener(listener);
}
public class MyListener implements View.OnClickListener {
@Override
public void onClick(View v) {
int tag = (Integer) v.getTag();
switch (tag) {
case 1:
System.out.println("button1 click");
break;
case 2:
System.out.println("button2 click");
break;
case 3:
System.out.println("button3 click");
break;
case 4:
System.out.println("button4 click");
break;
}
}
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/herryz/archive/2011/02/18/6193844.aspx
[3] Log分析课程及Gallery uc menubar例子
来源: 互联网 发布时间: 2014-02-18
Log分析教程及Gallery uc menubar例子
[Android实例] 【Sundy系列】网上绝无仅有的Log分析教程及例子!
[Android实例] 【Sundy系列】网上绝无仅有的Log分析教程及例子!
一个gallery写的类似UC桌面的menubar
最新技术文章: