blocksmart launcher propro怎么使用方法,发图

后使用我的收藏没有帐号?
关注:6791
所属分类: &
查看: 9|回复: 1
我的世界手机版blocklauncherpro怎么使用方法,发图 ...
发表于 昨天&20:25
我的世界手机版blocklauncherpro怎么使用方法,发图
找手游 上18183
发表于 昨天&21:16
额1.72过时了下载我的世界0.8.0&&
指尖发语音可以赚萌点()收起回复展开回复
找手游 上18183
18183手游风云榜报名零门槛,欢迎各路有实力的朋友参加评选。
黑人小伙彪中文吐槽假新闻爆红网络,被封“中文八级”1618人阅读
案例使用的图片如下:
&&&&&&&&&&&&&&&&&&&&&&&&&&
1.在res/drawable目录下新增一个xml风格文件,seekbar_define_style.xml
&?xml&version=&1.0&&encoding=&utf-8&?&
&layer-list
&&&&xmlns:android=&/apk/res/android&&
&&&&&&&&android:id=&@android:id/background&
&&&&&&&&android:drawable=&@drawable/hou&/&
&&&&&&&&android:id=&@android:id/progress&
&&&&&&&&android:drawable=&@drawable/qian&/&
&&&&&&&&android:id=&@android:id/secondaryProgress&
&&&&&&&&android:drawable=&@drawable/qian&/&
&/layer-list&
2.在res/drawable下定义个seekbar_thumb.xml文件
&?xml&version=&1.0&&encoding=&utf-8&?&
&selector&xmlns:android=&/apk/res/android&&&&&&&&&
&&&&&item&&&
&&&&&&&&android:state_focused=&true&&&&
&&&&&&&&android:state_pressed=&true&&&&
&&&&&&&&android:drawable=&@drawable/ic_launcher&&/&&&&&&&&
&&&&&item&&&
&&&&&&&&android:state_focused=&false&&&&
&&&&&&&&android:state_pressed=&false&&
&&&&&&&&android:drawable=&@drawable/orbino_icon_pack_006&&/&&&&&&&&&&&&&&
&&&&&item&&&
&&&&&&&&android:state_focused=&true&&&&
&&&&&&&&android:state_pressed=&false&&&&&&&&&&&&&&
&&&&&&&&android:drawable=&@drawable/ios&&/&&&&&&&&&
&&&&&item&&&
&&&&&&&&android:state_focused=&true&&&&&&&&&&&&&&
&&&&&&&&android:drawable=&@drawable/ios&/&
&/selector&
3.在res/layut下定义布局资源文件seekbar_define.xml
&?xml&version=&1.0&&encoding=&utf-8&?&
&ScrollView&xmlns:android=&&a
href=&/apk/res/android&&rel=&nofollow&&/apk/res/android&/a&&
&&&&android:layout_width=&fill_parent&
&&&&android:layout_height=&fill_parent&
&&&&&LinearLayout
&&&&&&&&android:layout_width=&fill_parent&
&&&&&&&&android:layout_height=&fill_parent&
&&&&&&&&&android:orientation=&vertical&
&&&&&TextView
&&&&android:id=&@+id/seekbar_tetview_one&
&&&&android:layout_width=&wrap_content&
&&&&android:layout_height=&wrap_content&
&&&&android:text=&SeekBar自定义&
&&&&&TextView
&&&&android:id=&@+id/seekbar_tetview_two&
&&&&android:layout_width=&wrap_content&
&&&&android:layout_height=&wrap_content&
&&&&android:text=&SeekBar拖动时信息提示&
&&&&&SeekBar
&&&&android:layout_width=&321px&
&&&&android:layout_height=&wrap_content&
&&&&android:layout_centerInParent=&true&
&&&&android:maxHeight=&20px&
&&&&android:minHeight=&20px&
&&&&android:paddingLeft=&18px&
&&&&android:paddingRight=&18px&
&&&&android:max=&100&
&&&&android:progressDrawable=&@drawable/seekbar_define_style&
&&&&android:thumb=&@drawable/seekbar_thumb&
&&&&android:id=&@+id/seekBar&/&
&&/LinearLayout&
&/ScrollView&
4.定义java文件通过 引用布局文件:
package&com.
import&android.R.
import&android.app.A
import&android.os.B
import&android.os.H
import&android.os.M
import&android.widget.SeekB
import&android.widget.SeekBar.OnSeekBarChangeL
import&android.widget.TextV
public&class&SeekBarDemo_DefineDemo&extends&Activity
&&&&private&SeekBar
&&&&private&TextView
textView_one, textView_
&&&&@Override
&&&&protected&void&onCreate(Bundle
savedInstanceState) {
&&&&&&&&super.onCreate(savedInstanceState);
&&&&&&&&setContentView(R.layout.seekbar_define);
&&&&&&&&seekBar
= (SeekBar) findViewById(R.id.seekBar);
&&&&&&&&textView_one
= (TextView) findViewById(R.id.seekbar_tetview_one);
&&&&&&&&textView_two
= (TextView) findViewById(R.id.seekbar_tetview_two);
&&&&&&&&seekBar.setOnSeekBarChangeListener(seekbarChangeListener);
&&&&private&OnSeekBarChangeListener
seekbarChangeListener =&new&OnSeekBarChangeListener()
&&&&&&&&@Override
&&&&&&&&public&void&onStopTrackingTouch(SeekBar
seekBar) {
&&&&&&&&&&&&
&&&&&&&&&&&&textView_two.setText(&停止拖动了!&);
&&&&&&&&@Override
&&&&&&&&public&void&onStartTrackingTouch(SeekBar
seekBar) {
&&&&&&&&&&&&
&&&&&&&&&&&&textView_two.setText(&进度开始改变&);
&&&&&&&&@Override
&&&&&&&&public&void&onProgressChanged(SeekBar
seekBar,&int&progress,
&&&&&&&&&&&&&&&&boolean&fromUser)
&&&&&&&&&&&&textView_two.setText(&正在进行拖动操作,还没有停下来一直再拖动&);
&&&&&&&&&&&&Message
message =&new&Message();
&&&&&&&&&&&&Bundle
bundle =&new&Bundle();
&&&&&&&&&&&&float&pro
= seekBar.getProgress();
&&&&&&&&&&&&float&num
= seekBar.getMax();
&&&&&&&&&&&&float&result
= (pro / num) *&100;
&&&&&&&&&&&&bundle.putFloat(&key&,
&&&&&&&&&&&&message.setData(bundle);
&&&&&&&&&&&&message.what
&&&&&&&&&&&&handler.sendMessage(message);
用Handler来更新UI
&&&&private&Handler
handler =&new&Handler()
&&&&&&&&@Override
&&&&&&&&public&void&handleMessage(Message
&&&&&&&&&&&&textView_one.setText(&当前拖动位置占
&&&&&&&&&&&&&&&&&&&&+
msg.getData().getFloat(&key&)
+&&/100&);
最后执行效果:
&二:使用颜色显示,和尚面是一样的,只有我们定义颜色资源来替代图片资源文件seekbar_define_color_style.xml:如下:
&?xml&version=&1.0&&encoding=&UTF-8&?&&&&&
&layer-list&xmlns:android=&/apk/res/android&&&&&&
&&&&item&android:id=&@android:id/background&
&&&&&&&&&&&&android:paddingTop=&3px&
&&&&&&&&&android:paddingBottom=&3px&&&&&&
&&&&&&&shape&&&&&
&&&&&&&&&&corners&android:radius=&10dip&&/&&&&&
&&&&&&&&&&gradient&&&
&&&&&&&&&&&&&android:startColor=&#ffffffff&&
&&&&&&&&&&&&&android:centerColor=&#ff000000&&&&&
&&&&&&&&&&&&&android:endColor=&#ff808A87&&&&
&&&&&&&&&&&&&android:centerY=&0.45&&&&&
&&&&&&&&&&&&&android:angle=&270&/&&&&&
&&&&&&&/shape&&&&&
&&&&/item&&&&&
&&&&item&android:id=&@android:id/progress&
&&&&&&&&&&&&android:paddingTop=&3px&
&&&&&&&&&android:paddingBottom=&3px&&&&&&&
&&&&&&&&clip&&&&&
&&&&&&&&&&&shape&&&&&
&&&&&&&&&&&&&&&corners&android:radius=&10dip&&/&&&&&
&&&&&&&&&&&&&&&gradient&&&
&&&&&&&&&&&&&&&&&&android:startColor=&#ffffffff&&
&&&&&&&&&&&&&&&&&&android:centerColor=&#ffFFFF00&&&&&
&&&&&&&&&&&&&&&&&&android:endColor=&#ffAABD00&&&&
&&&&&&&&&&&&&&&&&&android:centerY=&0.45&&&&&
&&&&&&&&&&&&&&&&&&android:angle=&270&/&&&&&
&&&&&&&&&&&/shape&&&&&
&&&&&&&&/clip&&&&&
&&&&/item&&&&&
&&/layer-list&
之后再SeekBar标签使用如下属性进行引入:其他保持不变
android:progressDrawable=&@drawable/seekbar_define_color_style&
执行效果:
由于SeekBar的属性thumb引入了自定义的seekbar_thumb.xml文件,拖动图标是我们自定义的图片:除去这个属性
android:thumb=&@drawable/seekbar_thumb&
就回复系统默认状态效果最后效果如下:
我们可以通过颜色值再次休息seekbar_thumb.xml文件,使拖动按钮设置成自定义颜色:
----------------------------------------------------------
摘要:做音乐播放器,有时会要求EQ均衡器,但android默认的样式是水平的,这时就需要费点心思了。 先是实现默认SeekBar样式的EQ均衡器: 这是4.0...
&做音乐播放器,有时会要求EQ均衡器,但android默认的样式是水平的,这时就需要费点心思了。
&&&& 先是实现默认SeekBar样式的EQ均衡器:
&&&&& 这是4.0以上默认样式的SeekBar,2.3或以下就像是进度条一样。
&&&& &要实现这样的效果,其实并不难,先贴上源码:
public class MainActivity extends Activity {
private MediaPlayer mMediaP
private Equalizer mE
private LinearLayout mL
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
mLayout = new LinearLayout(this);
mLayout.setOrientation(LinearLayout.VERTICAL);
setContentView(mLayout);
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(&/sdcard/陪我去流浪.mp3&);
mMediaPlayer.prepare();
mMediaPlayer.start();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
setEqualize();
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
private void setEqualize() {
mEqualizer = new Equalizer(0, mMediaPlayer.getAudioSessionId());
mEqualizer.setEnabled(true);
short bands = mEqualizer.getNumberOfBands();
final short minEqualizer = mEqualizer.getBandLevelRange()[0];
final short maxEqualizer = mEqualizer.getBandLevelRange()[1];
for (short i = 0; i & i++) {
final short band =
TextView freqTextView = new TextView(this);
freqTextView.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT));
freqTextView.setGravity(Gravity.CENTER_HORIZONTAL);
freqTextView
.setText((mEqualizer.getCenterFreq(band) / 1000) + &HZ&);
mLayout.addView(freqTextView);
LinearLayout row = new LinearLayout(this);
row.setOrientation(LinearLayout.HORIZONTAL);
TextView minDbTextView = new TextView(this);
minDbTextView.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT));
minDbTextView.setText((minEqualizer / 100) + & dB&);
TextView maxDbTextView = new TextView(this);
maxDbTextView.setLayoutParams(new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT));
maxDbTextView.setText((maxEqualizer / 100) + & dB&);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
SeekBar seekbar = new SeekBar(this);
seekbar.setLayoutParams(layoutParams);
seekbar.setMax(maxEqualizer - minEqualizer);
seekbar.setProgress(mEqualizer.getBandLevel(band));
seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onStopTrackingTouch(SeekBar seekBar) {
public void onStartTrackingTouch(SeekBar seekBar) {
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub
mEqualizer.setBandLevel(band,
(short) (progress + minEqualizer));
row.addView(minDbTextView);
row.addView(seekbar);
row.addView(maxDbTextView);
mLayout.addView(row);
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
if (isFinishing() && mMediaPlayer != null) {
mMediaPlayer.release();
mEqualizer.release();
mMediaPlayer = null;
&&&&&&这里我采用了手动设置Layout布局的方式,因为上面的Layout采用LinearLayout实现,并且每个SeekBar的属性设置都一样,考虑到SeekBar的数量较多,采用这个方式可能会更好点,至少我们不需要写太繁琐的Layout布局文件。
&&&&& 撇开那些Layout的布局代码,我们看看最主要的部分:SeekBar和Equalizer的设置。
&&&&& android系统提供内置的Equalizer支持,我们可以直接声明并且使用。但必须注意,当我们在代码中使用Equalizer的时候,其实就是调整音量(EQ均衡器是改变音频使得声音发生变化,像是洪亮或者低沉)。所以,我们需要在我们的代码中声明这么一句:
setVolumeControlStream(AudioManager.STREAM_MUSIC);
&&&&& 因为涉及到硬件方面的修改,我们需要权限:
&uses-permission android:name=&android.permission.MODIFY_AUDIO_SETTINGS& /&
&&&&& 它允许我们进行全局的音频设置。
&&&&&&我们再来看看这句:
mEqualizer = new Equalizer(0, mMediaPlayer.getAudioSessionId());
&&&&&&每个MediaPlayer都有自己独一无二的SessionId,我们需要将Equalizer附加到这个MediaPlayer上,就必须获取该SessionId。然后我们再创建一个优先级为0的Equalizer对象。所谓的优先级,是因为一个Equalizer engine可以被多个应用程序共享,所以我们必须设置优先级,优先级0代表该应用程序为正常级别。
&&&&&要想启动Equalizer,我们还必须这样子:
mEqualizer.setEnabled(true);
&&& 这就是学过单片机的同学非常熟悉的&使能&。
&&& 然后我们再获取支持的频谱:
short bands = mEqualizer.getNumberOfBands();
&&&&不同的硬件设备支持的频谱是不一样的,像是电脑能支持的频谱就比手机要多得多。
&&&&接着就是获取频谱中的等级范围,我们只需要获取最低和最高即可。
final short minEqualizer = mEqualizer.getBandLevelRange()[0];
final short maxEqualizer = mEqualizer.getBandLevelRange()[1];
&&&&&接下来就是遍历频谱,设置SeekBar了:
seekbar.setMax(maxEqualizer - minEqualizer);
seekbar.setProgress(mEqualizer.getBandLevel(band));
seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onStopTrackingTouch(SeekBar seekBar) {}
public void onStartTrackingTouch(SeekBar seekBar) {}
@TargetApi(Build.VERSION_CODES.GINGERBREAD)
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
mEqualizer.setBandLevel(band, (short) (progress + minEqualizer));
&&&&& 我们必须设置SeekBar的最大进度范围,也就是进度顶端所代表的值。接着就是实现SeekBar进度改变时,Equalizer的音频也跟着相应的改变,这就需要监听SeekBar。
&&&&& 好了,到了这里,基本的EQ均衡器已经实现了,但我们想要的并不是功能的实现,而是界面的实现(这往往是我们这些移动互联网开发者的恶梦,美工设计师们从来都没有考虑过我们要设计出他们的界面有时是多么难甚至不可能的一件事啊!)。
&&&&& 既然默认的SeekBar样式无法满足我们的要求,我们只能自定义自己想要的SeekBar了。幸好,android还是提供了这种支持:只要继承自AbsSeekBr,我们就能得到自己想要的SeekBar了。
&&&&& 依然先上源码:
public class VerticalSeekBar extends AbsSeekBar {
private Drawable mT
private int
private int
public interface OnSeekBarChangeListener {
void onProgressChanged(VerticalSeekBar VerticalSeekBar, int progress,
boolean fromUser);
void onStartTrackingTouch(VerticalSeekBar VerticalSeekBar);
void onStopTrackingTouch(VerticalSeekBar VerticalSeekBar);
private OnSeekBarChangeListener mOnSeekBarChangeL
public VerticalSeekBar(Context context) {
this(context, null);
public VerticalSeekBar(Context context, AttributeSet attrs) {
this(context, attrs, android.R.attr.seekBarStyle);
public VerticalSeekBar(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
public void setOnSeekBarChangeListener(OnSeekBarChangeListener l) {
mOnSeekBarChangeListener =
void onStartTrackingTouch() {
if (mOnSeekBarChangeListener != null) {
mOnSeekBarChangeListener.onStartTrackingTouch(this);
void onStopTrackingTouch() {
if (mOnSeekBarChangeListener != null) {
mOnSeekBarChangeListener.onStopTrackingTouch(this);
void onProgressRefresh(float scale, boolean fromUser) {
Drawable thumb = mT
if (thumb != null) {
setThumbPos(getHeight(), thumb, scale, Integer.MIN_VALUE);
invalidate();
if (mOnSeekBarChangeListener != null) {
mOnSeekBarChangeListener.onProgressChanged(this, getProgress(),
fromUser);
private void setThumbPos(int w, Drawable thumb, float scale, int gap) {
int available = w + getPaddingLeft() - getPaddingRight();
int thumbWidth = thumb.getIntrinsicWidth();
int thumbHeight = thumb.getIntrinsicHeight();
available -= thumbW
available += getThumbOffset() / 2;
int thumbPos = (int) (scale * available);
int topBound, bottomB
if (gap == Integer.MIN_VALUE) {
Rect oldBounds = thumb.getBounds();
topBound = oldBounds.
bottomBound = oldBounds.
topBound =
bottomBound = gap + thumbH
thumb.setBounds(thumbPos, topBound, thumbPos + thumbWidth, bottomBound);
protected void onDraw(Canvas c) {
c.rotate(-90);
c.translate(-height, 0);
super.onDraw(c);
protected synchronized void onMeasure(int widthMeasureSpec,
int heightMeasureSpec) {
height = View.MeasureSpec.getSize(heightMeasureSpec) / 2;
width = 50;
this.setMeasuredDimension(width, height);
public void setThumb(Drawable thumb) {
super.setThumb(thumb);
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(h, w, oldw, oldh);
public boolean onTouchEvent(MotionEvent event) {
if (!isEnabled()) {
return false;
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
setPressed(true);
onStartTrackingTouch();
trackTouchEvent(event);
case MotionEvent.ACTION_MOVE:
trackTouchEvent(event);
attemptClaimDrag();
case MotionEvent.ACTION_UP:
trackTouchEvent(event);
onStopTrackingTouch();
setPressed(false);
case MotionEvent.ACTION_CANCEL:
onStopTrackingTouch();
setPressed(false);
return true;
private void trackTouchEvent(MotionEvent event) {
final int Height = getHeight();
final int available = Height - getPaddingBottom() - getPaddingTop();
int Y = (int) event.getY();
float progress = 0;
if (Y & Height - getPaddingBottom()) {
scale = 0.0f;
} else if (Y & getPaddingTop()) {
scale = 1.0f;
scale = (float) (Height - getPaddingBottom() - Y)
final int max = getMax();
progress = scale *
setProgress((int) progress);
private void attemptClaimDrag() {
if (getParent() != null) {
getParent().requestDisallowInterceptTouchEvent(true);
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
KeyEvent newEvent = null;
switch (event.getKeyCode()) {
case KeyEvent.KEYCODE_DPAD_UP:
newEvent = new KeyEvent(KeyEvent.ACTION_DOWN,
KeyEvent.KEYCODE_DPAD_RIGHT);
case KeyEvent.KEYCODE_DPAD_DOWN:
newEvent = new KeyEvent(KeyEvent.ACTION_DOWN,
KeyEvent.KEYCODE_DPAD_LEFT);
case KeyEvent.KEYCODE_DPAD_LEFT:
newEvent = new KeyEvent(KeyEvent.ACTION_DOWN,
KeyEvent.KEYCODE_DPAD_DOWN);
case KeyEvent.KEYCODE_DPAD_RIGHT:
newEvent = new KeyEvent(KeyEvent.ACTION_DOWN,
KeyEvent.KEYCODE_DPAD_UP);
newEvent = new KeyEvent(KeyEvent.ACTION_DOWN,
event.getKeyCode());
return newEvent.dispatch(this);
return false;
&&&&&& 代码很长,但关键是我上面标记的几个方法。
&&&&&& onDraw()该方法就是实现竖直SeekBar的关键。我们可以看到,关键就是那个c.rotate(-90),它实现了我们的竖直:通过反转-90度。setThumbPos()方法是为了调整thumb的大小,这个很重要,尤其是当我们开始排版的时候,thumb很可能因为布局的问题而显示不完全或者根本就不见了。onMeasure()针对的是进度条的设置。至于具体的大小怎样设置,得看大家自己的具体应用了。
&&&&&& 这个是实现的效果:
&&&&&&前面的代码基本保持不变,只要将SeekBar改为VerticalSeekBar就可以了:
for (short i = 0; i & i++) {
final short band =
int index = (int)
VerticalSeekBar seekBar = (VerticalSeekBar) findViewById(seekBars[index]);
seekBar.setMax(maxEqualizer - minEqualizer);
seekBar.setProgress(mEqualizer.getBandLevel(band));
seekBar.setOnSeekBarChangeListener(new VerticalSeekBar.OnSeekBarChangeListener() {
public void onProgressChanged(VerticalSeekBar VerticalSeekBar,
int progress, boolean fromUser) {
mEqualizer.setBandLevel(band,
(short) (progress + minEqualizer));
public void onStartTrackingTouch(VerticalSeekBar VerticalSeekBar) {
// TODO Auto-generated method stub
public void onStopTrackingTouch(VerticalSeekBar VerticalSeekBar) {
// TODO Auto-generated method stub
&&&&&&&为了实现我上面的布局效果,我这次使用了RelativeLayout布局文件,至于那些间距的调整,就留给读者们了。
&&&&&&这样的效果还是不行的,因为有个致命的缺陷:android2.3的默认样式和android4.0的默认样式是不一样的!别看我上面的效果挺美观的,在android2.3上可不是这样。
&&&&& 最好的解决方法就是替换默认样式。
&&&&& 替换默认样式的方法很简单:在res目录下,新建drawable文件夹,然后我们在该目录下新建一个xml文件:
&?xml version=&1.0& encoding=&utf-8&?&
&layer-list xmlns:android=&/apk/res/android& &
&item android:id=&@android:id/secondaryProgress&&
&clip android:drawable=&@drawable/progress2& /&
&item android:id=&@android:id/progress&&
&clip android:drawable=&@drawable/progress1& /&
&/layer-list&
&&&& 我们可以使用layer-list来替换默认样式,secondaryProgress指的是我们进度条中剩下的进度,progress指的就是我们当前的进度。
&&&&&分别设置好它们的替换图片后,我们再在SeekBar中这样设置:
&com.example.eqpratice.VerticalSeekBar
android:id=&@+id/sec&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:layout_toRightOf=&@id/fir&
android:progressDrawable=&@drawable/progress&
android:secondaryProgress=&100&
android:thumb=&@drawable/thumb& /&
&&&&&这里android: secondaryProgress=&100&设置的是我们thumb能达到的最大进度,这个是要设置的,不然会出现thumb超出进度条的情况。
&&&& 现在的效果如图:
&&&&&&& 大家可以根据自己的需要,自定义自己想要的样式。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:225741次
积分:3874
积分:3874
排名:第2772名
原创:46篇
转载:738篇
译文:10篇
评论:46条
(5)(2)(5)(2)(4)(8)(2)(11)(6)(9)(11)(14)(17)(35)(82)(13)(9)(56)(44)(71)(55)(142)(118)(16)(22)(35)温馨提示:邮箱/用户名/昵称都可直接登录
&&十天内免登陆
正在登录,请稍后。。。
吃过麻婆豆腐,喝过豆腐鱼头汤,那么,想不想尝试拌.. 日期:
特别关注今日本周本月
蛇果怎么吃?蛇果是苹果的一个品种,其价格、外形、营养...
浏览:1286次
冬至后天气变冷,这时最宜进补,那么冬至吃什么补呢?冬...
浏览:6165次
夏威夷果的功效与作用及食用方法,副作用是什么?在世界...
浏览:32504次
热门餐厅电子优惠券
地区:荔湾区人气:614226评级:
【推广商讯】
中国吃网()是中国餐饮行业第一门户网。为您聚合了美食菜谱、美女养生、美男养生、儿童饮食、老年养生、饮食常识、生活窍门、食物食材、餐饮文化等内容。目前为您提供的是栏目的【家庭发豆芽方法大全】
[摘要]&很多朋友都对在家发豆芽比较感兴趣,一是安全,二来营养价值也比外面买的高出不少。下面我家厨房就为您收集了在家几种生豆芽的方法,希望您看过之后知道豆芽怎么发,生豆芽的方法有哪些。
  很多朋友都对在家发豆芽比较感兴趣,一是安全,二来营养价值也比外面买的高出不少。下面我家厨房就为您收集了在家几种生豆芽的方法,希望您看过之后知道豆芽怎么发,生豆芽的方法有哪些。&
  怎么发豆芽 生黄豆芽的方法
  1、把黄豆用温水泡一晚上。泡到胀开,有微微鼓起的样子,淘洗干净,沥干水,放碗里。有不好的碎的豆子,可以捡出来,这样的,是发不出芽来的。(图一)
  2、找个干净的,无油污的纱布或者毛巾,棉布什么的,盖在上面。(图二)
  3、每天打开纱布给黄豆换一次水,每次水要沥干。纱布可以顺便洗一下。图三至图四,分别是第二天,第三天。第四天就可以吃了。
发豆芽的过程图
  发黄豆芽的注意事项:
  其实黄豆芽要比绿豆芽好发,避光性也没那么强,当然,像我这样每天拿出来找个亮堂地方拍照片,它也会有点变绿的,这个看第五个小图也能看出来。不过口感影响不大。
  我发的黄豆芽,比较细。如果喜欢吃又粗又长的黄豆芽,请在纱布上面压个重点的东西试试。
  还有就是,我发现自己发的黄豆芽,有时候豆子上会有黑色的裂纹,后来在发的过程中仔细看了一下,是有些豆子本身就有,可能在采收干制的某个环节上受过伤。没关系,不影响食用。
  还有一些黄豆是根本就发不出芽来的,我不清楚原因,简单搜过,有人说是转基因的,有人说是烘干的豆子。不过呢,在合适的温度下,黄豆很快就能出芽,在盖上纱布后,一般第二天,不超过第三天就会冒出小芽来。所以如果操作过程没有出岔子的话,如果第三天,豆子仍然没有反应,那还是趁着新鲜把豆子煮煮吃了吧。或者打豆浆也不错。
  怎么发绿豆芽 生豆芽方法一
  1、准备一个容器。我用一只塑料筛子,铺上一块布或毛巾。
&发豆芽的过程图
  2、把豆子泡在水里催芽。浸泡时间24小时。
&发豆芽的过程图
  3、把豆子平铺在筛子里。
  4、豆子上面盖上薄毛巾,压上重物(红砖等)。压上重物豆芽长得粗壮很多。
  5、把筛子放在避光的地方,不能见光,不能吹风。每天拿出来冲水两次。在25&30摄氏度的温度下,第五天就可以收成。10-20度要第六天才能收成。豆芽高度约在8厘米左右, 绿豆芽直径约4毫米,黄豆芽直径约5毫米。
发豆芽的过程图
  怎么发豆芽 生绿豆芽的方法二
  材料:绿豆 可口可乐塑料瓶(别的牌子的也行,哈)& 遮阳的布(不透光即可)
  1、把绿豆泡24个小时左右直到小芽钻出绿豆皮,准备发豆芽。
  2、把可口可乐瓶子底下钻几个眼 用小剪刀阔一下眼的大小 以绿豆刚好不钻出来为宜(为了每天浇的水都能不积在瓶子里,保证绿豆芽的新鲜) 把瓶口锥形的那部分剪掉,为了瓶内通风和倒水。
&中国吃网温馨提示:版权所有,转载请注明出处1
声明:此文章【家庭发豆芽方法大全】以及中国吃网餐饮百科所有刊载菜谱制作方法、文章、知识、数据仅供参考,使用前请自行核实,由此所产生的风险均由您个人承担。中国吃网“餐饮百科”致力打造成为提供最优秀实用美食、菜谱食谱做法,专业健康养生知识、生活窍门、食材介绍的专业生活服务平台。如果该文章侵犯了您的版权或相关权益,请 与我们联系,我们将及时处理。
责任编辑:张鹏飞
资讯食材加盟菜谱养生导吃
版权所有&Copyright & 2005 - 2014
国际机构 Inc. All rights reserved.
香港绿满家有限公司
备案序号:
扫描二维码关注我为好友

我要回帖

更多关于 launcherpro 的文章

 

随机推荐