導航:首頁 > 操作系統 > android描邊

android描邊

發布時間:2022-03-14 01:30:40

android不用shape怎麼給textview描邊

stroke:描邊
corners:圓角
padding:間隔

Shape的使用如下,製作橢圓形邊框textview_bg.xml。

[html] view plain
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

<solid android:color="#ffffff" /> <!-- 定義填充的顏色值 -->

② android 圓角邊框 陰影邊框怎麼設置

所謂添加陰影,就是兩個畫布從重疊,上方的畫布小於下方的畫布,陰影顏色為下方的畫布的顏色。
item 中shape 的屬性 (rectangle:矩形;line:線性;oval:橢圓;ring:環形),默認為矩形
corners //設置圓角幅度,必須是在shape=rectangle的時候,corners才有效
<corners
Android:radius="dimension" //全部的圓角半徑
android:topLeftRadius="dimension" //左上角的圓角半徑
android:topRightRadius="dimension" //右上角的圓角半徑
android:bottomLeftRadius="dimension" //左下角的圓角半徑
android:bottomRightRadius="dimension" /> //右下角的圓角半徑
eg:<corners android:radius="10dp" />
solid用以指定內部填充色
e.g:<solid android:color="color" />
gradient //定義漸變色,可以定義兩色漸變和三色漸變,及漸變樣式
linear(線性漸變)、radial(放射性漸變)、sweep(掃描式漸變), 在構造放射性漸變時,要加上android:gradientRadius屬性(漸變半徑),即必須指定漸變半徑的大小才會起作用。
<gradient
android:type=["linear" | "radial" | "sweep"] //共有3中漸變類型
android:angle="integer" //漸變角度,必須為45的倍數,0為從左到右,90為從上到下
android:centerX="float" //漸變中心X的相當位置,范圍為0~1
android:centerY="float" //漸變中心Y的相當位置,范圍為0~1
android:startColor="color" //漸變開始點的顏色
android:centerColor="color" //漸變中間點的顏色,在開始與結束點之間
android:endColor="color" //漸變結束點的顏色
android:gradientRadius="float" //漸變的半徑,只有當漸變類型為radial時才有效
android:useLevel=["true" | "false"] /> //使用LevelListDrawable時就要設置為true。設為false時才有漸變效果
stroke //這是描邊屬性,可以定義描邊的寬度,顏色,虛實線等
<stroke
android:width="dimension" //描邊的寬度
android:color="color" //描邊的顏色 // 以下兩個屬性設置虛線
android:dashWidth="dimension" //虛線的寬度,值為0時是實線
android:dashGap="dimension" /> //虛線的間隔

③ android邊框能只定義左邊框嗎

android雖然提供了四個屬性, 但是目前這四個無論設置哪個都是影響到四個的。 如果確實有必要的話,那可以通過以下變態手法達到。 在上面放一個獨立的控制項,然後另外一個矩形放在那個控制項的上層。 這里應該要用到層布局。
給view設置邊框的代碼:
1.創建xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

2.設置<!-- 圓角 -->
<corners
android:radius="9dp"
android:topLeftRadius="2dp"
android:topRightRadius="2dp"
android:bottomLeftRadius="2dp"
android:bottomRightRadius="2dp"/><!-- 設置圓角半徑 -->

3.設置<!-- 漸變 -->
<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"/>

4.設置<!-- 間隔 -->
<padding
android:left="2dp"
android:top="2dp"
android:right="2dp"
android:bottom="2dp"/><!-- 各方向的間隔 -->

5.設置大小精細<!-- 大小 -->
<size
android:width="50dp"
android:height="50dp"/><!-- 寬度和高度 -->

6.設置<!-- 填充 -->
<solid
android:color="@android:color/white"/><!-- 填充的顏色 -->

7.設置邊框<!-- 描邊 -->
<stroke
android:width="2dp"
android:color="@android:color/black"
android:dashWidth="1dp"
android:dashGap="2dp"/>
</shape>

④ android button 怎麼消除邊框

使用資源文件shape定義背景(background)

下圖是安卓無憂中的例子,可以看裡面的源碼還有文檔,大部分形狀都可以定義,請看截圖:

在Android程序開發中,我們經常會去用到Shape這個東西去定義各種各樣的形狀,首先我們了解一下

Shape下面有哪些標簽,都代表什麼意思:

1.1 solid:填充

android:color指定填充的顏色

1.2 gradient:漸變

android:startColor和android:endColor分別為起始和結束顏色,

android:angle是漸變角度,必須為45的整數倍。

另外漸變默認的模式為android:type="linear",即線性漸變,

可以指定漸變為徑向漸變,android:type="radial",徑向漸變需要指定半徑android:gradientRadius="50"。

angle值對應的位置如圖:

1.3 stroke:描邊

android:width="2dp" 描邊的寬度,android:color 描邊的顏色。

我們還可以把描邊弄成虛線的形式,設置方式為:

android:dashWidth="5dp"

android:dashGap="3dp"

其中android:dashWidth表示'-'這樣一個橫線的寬度,android:dashGap表示之間隔開的距離

1.4 corners:圓角

android:radius為角的弧度,值越大角越圓。

我們還可以把四個角設定成不同的角度,

同時設置五個屬性,則Radius屬性無效

android:Radius="20dp" 設置四個角的半徑

android:topLeftRadius="20dp" 設置左上角的半徑

android:topRightRadius="20dp" 設置右上角的半徑

android:bottomLeftRadius="20dp" 設置右下角的半徑

android:bottomRightRadius="20dp" 設置左下角的半徑

padding:間隔

可以設置上下左右四個方向的間隔

ps:為了方便交流看一下我名字中文和除了中文以外的。

⑤ label 的outline描邊只支持ios和android,win32下怎麼處理

系統字體是不支持描邊的。
/** only support for TTF */
virtual void enableOutline(const Color4B& outlineColor,int outlineSize = -1);

⑥ 怎麼給android 設置邊框

1.首先在res目錄下新建一個xml文件,類型選擇drawable,將自動生一個一個drawable文件(我用的sdk是android 4.1),並生成一個xml文件,在其中寫入以下代碼:

[java] view plain
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

<solid android:color="#FFFFFF" />

<stroke
android:width="0.01dp"
android:color="#FFFFFF" />

<padding
android:bottom="1dp"
android:left="0.5dp"
android:right="0.5dp"
android:top="0dp" />
</shape>

2.在要設置邊框的控制項xml命令里加入:android:background=「@drawable/boder」

⑦ android Radiobutton矩形的圓角並描邊之後上下邊的顏色不一樣,寬度不一樣,誰能指點一下。

你這圖片是在哪截的圖啊,Eclipse中還是手機上,有時在Eclipse上的布局界面上會看到這樣的效果,但運行到手機上是正常的。。。

⑧ android開發中怎麼在xml中設置描邊

android開發中怎麼在xml中是寫布局的地方,就是控制項描寫的地方的,

⑨ 怎麼為android控制項邊緣添加陰影

為控制項設置一個有陰影感的背景圖片即可,可以使用shape


在自定義shape中增加一層或多層,並錯開,即可顯示陰影效果。為增加立體感,按鈕按下的時候,只設置一層。我們可以通過top, bottom, right 和 left 四個參數來控制陰影的方向和大小



//自定義兩種陰影效果

第一種

<?xmlversion="1.0"encoding="utf-8"?>

<selectorxmlns:android="http://schemas.android.com/apk/res/android">
<itemandroid:state_pressed="true">
<layer-list>
<itemandroid:left="4dp"android:top="4dp">
<shape>
<solidandroid:color="#ff58bb52"/>
<cornersandroid:radius="30dip"/>
</shape>
</item>
</layer-list>
</item>
<item>
<layer-list>
<!--第一層-->
<itemandroid:left="4dp"android:top="4dp">
<shape>
<solidandroid:color="#66000000"/>
<cornersandroid:radius="30dip"/>
<!--描邊-->
<strokeandroid:width="1dp"android:color="#ffffffff"/>
</shape>
</item>
<!--第二層-->
<itemandroid:bottom="4dp"android:right="4dp">
<shape>
<solidandroid:color="#ff58bb52"/>
<cornersandroid:radius="30dip"/>
<!--描邊-->
<strokeandroid:width="1dp"android:color="#ffffffff"/>
</shape>
</item>
</layer-list>
</item>
</selector>


第二種

<?xmlversion="1.0"encoding="utf-8"?>

<selectorxmlns:android="http://schemas.android.com/apk/res/android">
<!--點擊之後-->
<itemandroid:state_pressed="true">
<layer-list>
<itemandroid:left="4dp"android:top="4dp">
<shape>
<solidandroid:color="#ff58bb52"/>
<cornersandroid:radius="3dp"/>
</shape>
</item>
</layer-list>
</item>
<!--正常狀態-->
<item>
<layer-list>
<!--第一層-->
<itemandroid:left="2dp"android:top="2dp">
<shape>
<solidandroid:color="#66000000"/>
<cornersandroid:radius="3dp"/>
</shape>
</item>
<!--第二層-->
<itemandroid:bottom="4dp"android:right="4dp">
<shape>
<solidandroid:color="#ff58bb52"/>
<cornersandroid:radius="3dp"/>
</shape>
</item>
<!--第三層-->
<itemandroid:bottom="6dp"android:right="6dp">
<shape>
<solidandroid:color="#ffcccccc"/>
<cornersandroid:radius="3dp"/>
</shape>
</item>
</layer-list>
</item>
</selector>

設置後的效果圖如下

⑩ android canvas怎麼畫圓弧

12345

要實現這個方法,我們要傳5個參數進去。
第一個參數:RectF oval
oval 參數的作用是:定義的圓弧的形狀和大小的范圍
/**
* 這是一個居中的圓
*/
float x = (getWidth() - getHeight() / 2) / 2;
float y = getHeight() / 4;

RectF oval = new RectF( x, y,
getWidth() - x, getHeight() - y); 1234567812345678

第二個參數:float startAngle
這個參數的作用是設置圓弧是從哪個角度來順時針繪畫的
canvas.drawArc(oval,-90,120,false,mPaint);11

canvas.drawArc(oval,90,110,false,mPaint);11

//設置為-180的時候也是這樣
canvas.drawArc(oval,180,140,false,mPaint);1212

//設置為360的時候也是這樣
canvas.drawArc(oval,0,140,false,mPaint);1212

第三個參數:float sweepAngle
這個參數的作用是設置圓弧掃過的角度
我們從上面的代碼就可以知道其中的作用了

第四個參數:boolean useCenter
這個參數的作用是設置我們的圓弧在繪畫的時候,是否經過圓形
值得注意的是,這個參數在我們的 mPaint.setStyle(Paint.Style.STROKE); 設置為描邊屬性的時候,是看不出效果的。
/**
*這里我是偷懶了,建議不要在onDraw()方法里初始化對象
*/
Paint p = new Paint();//這個是畫矩形的畫筆,方便大家理解這個圓弧
p.setStyle(Paint.Style.STROKE);
p.setColor(Color.RED);

mPaint.setAntiAlias(true);//取消鋸齒
mPaint.setStyle(Paint.Style.FILL);//設置畫圓弧的畫筆的屬性為描邊(空心),個人喜歡叫它描邊,叫空心有點會引起歧義
mPaint.setStrokeWidth(mCircleWidth);
mPaint.setColor(Color.CYAN);

/**
* 這是一個居中的圓
*/
float x = (getWidth() - getHeight() / 2) / 2;
float y = getHeight() / 4;

RectF oval = new RectF( x, y,
getWidth() - x, getHeight() - y);

canvas.drawArc(oval,360,140,false,mPaint);//畫圓弧,這個時候,繪制沒有經過圓心
canvas.drawRect(oval, p);//畫矩形2223

//當我們設置為true的時候,繪制的時候就經過圓心了
canvas.drawArc(oval,360,140,true,mPaint);1212

第五個參數:Paint paint
這個參數的作用是設置我們的畫筆對象的屬性
mPaint.setAntiAlias(true);//取消鋸齒
mPaint.setStyle(Paint.Style.FILL);//設置畫圓弧的畫筆的屬性為描邊(空心),個人喜歡叫它描邊,叫空心有點會引起歧義
mPaint.setStrokeWidth(mCircleWidth);
mPaint.setColor(Color.CYAN);12341234

這里還是要強調一下,當 p.setStyle(Paint.Style.STROKE)的時候,我們的第四個參數boolean useCenter,是看不到效果的。
下面是代碼全文
public class CustomProgress extends View{

private Paint mPaint;

/**
* 圓的寬度
*/
private int mCircleWidth = 3;

public CustomProgress(Context context) {
this(context, null);
}

public CustomProgress(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}

public CustomProgress(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mPaint = new Paint();
}

@Override
protected void onDraw(Canvas canvas) {
mPaint.setAntiAlias(true);//取消鋸齒
mPaint.setStyle(Paint.Style.FILL);
mPaint.setStrokeWidth(mCircleWidth);
mPaint.setColor(Color.CYAN);

/**
* 這是一個居中的圓
*/
float x = (getWidth() - getHeight() / 2) / 2;
float y = getHeight() / 4;

RectF oval = new RectF( x, y,
getWidth() - x, getHeight() - y);

canvas.drawArc(oval,360,140,true,mPaint);
}

閱讀全文

與android描邊相關的資料

熱點內容
伺服器怎麼執行sql 瀏覽:974
小孩子命令 瀏覽:708
貸款申請系統源碼 瀏覽:268
windowsxp文件夾打開後怎麼返回 瀏覽:664
怎麼把pdf變成圖片 瀏覽:797
17年程序員事件 瀏覽:496
iishttp壓縮 瀏覽:31
公司文件加密後拷走能打開嗎 瀏覽:186
headfirstjava中文 瀏覽:894
騰訊雲伺服器怎麼放在電腦桌面 瀏覽:8
批量生成圖片的app哪個好 瀏覽:496
小米10電池校準命令 瀏覽:96
移動商城系統app如何開發 瀏覽:692
用安卓手機如何發高清短視頻 瀏覽:339
怎樣運行java程序運行 瀏覽:553
海南根伺服器鏡像雲伺服器 瀏覽:536
weka聚類演算法 瀏覽:452
視頻伺服器修復是什麼意思 瀏覽:498
python跨平台開發 瀏覽:916
音遇app全民k歌從哪裡下載 瀏覽:646