android虚线shape
1. android用shape画虚线,怎么也不显示
Canvas类用来实现绘制.通过组合使用Canvas类的成员函数可以实现随心随欲地绘制图片的任何部分.
Canvas.clipRect:设置显示区域
Canvas.drawBitmap:绘制
例子:
Bitmap b=BitmapFactory.decodeStream("图片编号", null);//读取图片
Canvas c = null;//实例Canvas
c.save();//记录原来的canvas状态
c.clipRect(100,100,200,300);//显示从(100,100)到(200,300)的区域(单位:象素)
c.drawBitmap(b,10,0,null); //将阉割过的图片画到(10,0)位置
c.restore();//恢复canvas状态
2. Android 文字左边虚线
方式:
###第一种是通过写shape布局文件来实现给TextView设置background时引用此布局文件即可实现效果,shape布局文件代码如下:
stroke标签下为虚线框的主要设置,dashGap表示中间隔开一段距离,即定义了样式为虚线,效果图如下:
###第二种方式是通过自定义View使之继承View,然后在onDraw方法中将虚线和文字用Paint画笔画出。
主要代码如下:
public class DashedSurroundTextView extends View {
/
mTextColor 文字颜色 mBorderColor 虚线边界颜色 mBorderWidth虚线边界宽度
mTextSizen 文字大小 mText 文字内容
/
private int mTextColor;
private int mBorderColor;
private float mBorderWidth;
private float mTextSize;
private String mText;
private float start_x = 0;
private float start_y = 0;
private float padding = 5;
private float baseLineLong = 10;
private float radiusX = 20;
private float radiusY = 20;
...
public DashedSurroundTextView(Context context, AttributeSet attrs) {
super(context, attrs);
//获取自定义参数
TypedArray typedArray = context.obtainStyledAttributes(attrs,
R.styleable.DashedSurroundTextView);
//虚线border颜色
mBorderColor = typedArray.getColor(R.styleable.DashedSurroundTextView_border_color, Color.argb(0, 0, 0, 0));
//虚线border宽度
mBorderWidth = typedArray.getDimension(R.styleable.DashedSurroundTextView_border_width, 0);
//字体颜色
mTextColor = typedArray.getColor(R.styleable.DashedSurroundTextView_textColor, Color.argb(0, 0, 0, 0));
//字体大小
mTextSize = typedArray.getDimension(R.styleable.DashedSurroundTextView_textSize, 0);
//显示文字
mText = typedArray.getString(R.styleable.DashedSurroundTextView_text);
}
3. android用shape画虚线,怎么也不显示
一直以为android的shape能画直线,虚线,矩形,圆形等,画直线也就算了,用一个view设一下高度和颜色,就可以出来一条直线了。所以说这个对我来说经常不用,圆形是可以,看看我应用里的消息提示框都是这样生成的,好了,这个不存在问题
4. android用shape画虚线,怎么也不显示
shape中用stroke就行了吧
java"><strokeandroid:width="2dp"android:color="#dcdcdc"/>
不知道你的是什么具体情况
5. 如何使用shape来画半圆和画虚线
一直以为android的shape能画直线,虚线,矩形,圆形等,画直线也就算了,用一个view设一下高度和颜色,就可以出来一条直线了。所以说这个对我来说经常不用,圆形是可以,看看我应用里的消息提示框都是这样生成的
6. 如何使用shape来画半圆和画虚线
画半圆的关键所在是shape当中的corners和使用的控件(imageview)的width和height配合使用,而且比较坑的是在xml的预览界面当中看不出效果,需要跑真机才能看出效果。
画虚线
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line"> //这句话一定不要漏了
7. android虚线白框可以只设置一边吗
Android图形界面(虚线、实线、填充色等属性设置)——shape
首先需要在res的文件夹下任选一个drawable文件夹(这里主要是跟分辨率有关的,我一般都选第一个)然后右键新建xml文件选择shape直接添加属性就可以了。
使用时,需要在控件加入android:background="@drawable/edt_bg(你的文件名)"
直接在上面粘贴代码会出错(QAQ)所以还是贴图吧如果要带吗还是去原主哪里吧
详细
8. android用shape画虚线,怎么也不显示
android中 shape的用法如下:
注意这个padding属性,如果你设置了边框,建议你给控件设置一下padding
内边距,这要才能显示出来
<?xmlversion="1.0"encoding="utf-8"?>
<shapexmlns:android="http://schemas.android.com/apk/res/android">
<!--圆角-->
<corners
android:radius="9dp"
android:topLeftRadius="2dp"
android:topRightRadius="2dp"
android:bottomLeftRadius="2dp"
android:bottomRightRadius="2dp"/><!--设置圆角半径-->
<!--渐变-->
<gradient
android:startColor="@android:color/white"
android:centerColor="@android:color/black"
android:endColor="@android:color/black"
android:useLevel="true"
android:angle="45"
android:type="radial"
android:centerX="0"
android:centerY="0"
android:gradientRadius="90"/>
<!--间隔-->
<padding
android:left="2dp"
android:top="2dp"
android:right="2dp"
android:bottom="2dp"/><!--各方向的间隔-->
<!--大小-->
<size
android:width="50dp"
android:height="50dp"/><!--宽度和高度-->
<!--填充-->
<solid
android:color="@android:color/white"/><!--填充的颜色-->
<!--描边-->
<stroke
android:width="2dp"
android:color="@android:color/black"
android:dashWidth="1dp"
android:dashGap="2dp"/>
</shape>
9. android用shape画虚线,怎么也不显示
一直以为android的shape能画直线,虚线,矩形,圆形等,画直线也就算了,用一个view设一下高度和颜色,就可以出来一条直线了。所以说这个对我来说经常不用,圆形是可以,看看我应用里的消息提示框都是这样生成的,好了,这个不存在问题,今天想要做是一条虚线,什么也不说了,直接上虚线的代码:
[html] view plain
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<!-- 显示一条虚线,破折线的宽度为dashWith,破折线之间的空隙的宽度为dashGap,当dashGap=0dp时,为实线 -->
<stroke android:width="1dp" android:color="#D5D5D5"
android:dashWidth="2dp" android:dashGap="3dp" />
<!-- 虚线的高度 -->
<size android:height="2dp" />
</shape>
解释的好完美,真要不是不自己试,估计一辈子都会相信这是真的了,结果是放到手机里,从来没有出现过什么线条,对于像我一样追求完美的人来说,自然不会放过这一个细节,在网上找了大半天,有的小伙伴们也遇到了,并且也解决了,可是把他们的方法拿过来后,都一个也不好使,实际情况是还是不能显示,总结一下小伙伴们的解决方法吧
1.从android3.0开始,安卓关闭了硬件加速功能,所以就不能显示了,所以就是在 AndroidManifest.xml,或者是在activity中把硬件加速的功能关掉就可以了android:hardwareAccelerated="false"或者是view.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
2.一个小伙伴的翻译,说什么height要大于dashWidth才能显示。
我都按他们的方法试了,根本都不行,
所以要想真正的实现还是老老实实的自己去画一条虚线吧。
10. android用shape画虚线,怎么也不显示
设置宽高了吗?