导航:首页 > 操作系统 > android垂直seekbar

android垂直seekbar

发布时间:2023-01-10 02:29:25

android:如何将进度条(SeekBar),竖着布局

读seekbar的源码,将方想反过来即可,在巴士上有现成的,你可以看看这个 http://www.apkbus.com/forum.php?mod=viewthread&tid=82748

㈡ Android开发如何更改SeekBar式样

改变seekbar上的按钮通过设置android:thumb属性

改变seekbar的那个条设置android:progressDrawable属性

示例

按钮图片

<shape>
<solidandroid:color="@android:color/black"/>
<sizeandroid:width="2dp"android:height="10dp"/>
</shape>

进度条图片

<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<layer-list>
<itemandroid:id="@android:id/background">
<shape>
<gradient
android:startColor="#1DDA0B"
android:centerColor="#F5DA0B"
android:endColor="#D10000"
android:centerX="0.2"/>
</shape>
</item>
</layer-list>
</item>
</selector>


给seekbar设置属性

<SeekBar
android:id="@+id/seek_aqi"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/tv_aqi_text"
android:padding="0dp"
android:thumb="@drawable/seek_aqi_thumb"
android:progressDrawable="@drawable/seek_aqi_bg"
android:max="500"
android:maxHeight="5dp"
android:minHeight="5dp"
android:progress="70"/>

效果

㈢ android 带节点的seekbar怎么搞

sdk里面没有提供设置成垂直的方法 要自己去实现 查看原帖>>

㈣ 求助,Android里面的seekbar怎么垂直显示

把seekbar复写了。。旋转90度就可以了。

import android.content.Context;
import android.graphics.Canvas;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.SeekBar;

public class SlideBar extends SeekBar {

private int oHeight = 100;
private int oWidth = 30;
private int oProgress = -1;
private int oOffset = -1;;
private float xPos = -1;
private float yPos = -1;
private int top = -1;
private int bottom = -1;
private int left = -1;
private int right = -1;

public SlideBar(Context context) {

super(context);
}

public SlideBar(Context context, AttributeSet attrs) {

super(context, attrs);
oOffset = this.getThumbOffset();
oProgress = this.getProgress();
}

public SlideBar(Context context, AttributeSet attrs, int defStyle) {

super(context, attrs, defStyle);
}

protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

int height = View.MeasureSpec.getSize(heightMeasureSpec);
oHeight = height;
this.setMeasuredDimension(oWidth, oHeight);
}

protected void onSizeChanged(int w, int h, int oldw, int oldh) {

super.onSizeChanged(h, w, oldw, oldh);
}

// 设置layout
protected void onLayout(boolean changed, int l, int t, int r, int b) {

super.onLayout(changed, l, t, r, b);
left = l;
right = r;
top = t;
bottom = b;
}

// 画出滚动条
protected void onDraw(Canvas c) {
// 旋转
c.rotate(90);
//控制左右位置
c.translate(0,-30);
super.onDraw(c);
}

public boolean onTouchEvent(MotionEvent event) {

xPos = event.getX();
yPos = event.getY();
float progress = 1-(yPos-this.getTop())/(this.getBottom()- this.getTop());
oOffset = this.getThumbOffset();
oProgress = this.getProgress();
Log.d("offset" + System.nanoTime(), new Integer(oOffset).toString());
Log.d("progress" + System.nanoTime(), new Integer(oProgress).toString());
float offset;
offset = progress * (this.getBottom() - this.getTop());
this.setThumbOffset((int)offset);
Log.d("offset_postsetprogress" + System.nanoTime(), new Integer(oOffset).toString());
Log.d("progress_postsetprogress" + System.nanoTime(), new Integer(oProgress).toString());
// this.setProgress((int)(100*event.getY()/this.getBottom()));
this.setProgress((int)(100 * progress));
return true;
}
}

阅读全文

与android垂直seekbar相关的资料

热点内容
phpmysqlpdomysqli 浏览:802
php修改sql语句 浏览:714
android有道api 浏览:381
挠耳营水表用的什么app 浏览:49
战锤40kpdf 浏览:375
java判断字符串是汉字 浏览:462
2017初级教材pdf 浏览:451
松下空调压缩机品牌 浏览:817
python复选框 浏览:746
反诈中心app是什么时候出来的 浏览:586
魔兽世界需要什么服务器地址 浏览:189
啥是单片机休眠 浏览:104
什么音乐app最好 浏览:929
牙膏自制解压神器 浏览:329
卸载linuxwps 浏览:228
threadjavarunnable 浏览:360
一元线性回归计算法 浏览:950
刷宝app是什么鬼 浏览:744
linux动态加载模块 浏览:25
javamd5工具类 浏览:76