最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android開發(fā)之拖動條和評分組件用法分析

 更新時間:2017年07月18日 09:58:19   作者:青蛙小王子  
這篇文章主要介紹了Android開發(fā)之拖動條和評分組件用法,結(jié)合實例形式較為詳細的分析了Android拖動條及評分組件的布局與功能實現(xiàn)技巧,需要的朋友可以參考下

本文實例講述了Android開發(fā)之拖動條和評分組件用法。分享給大家供大家參考,具體如下:

今天閑著沒事做就拿出了Android書接著學(xué)習(xí),android就是組件多有時候還會弄混淆了。這次介紹的是拖動條和評分組件,這2個組件也是超級簡單的

下面就一個一個的來研究。

1. 拖動條,就類似android手機上調(diào)節(jié)音量那個,該組件和對話框不同的是用戶可以操作。該組件的xml表現(xiàn)形式如下

<SeekBar
   android:id="@+id/seek"
   android:layout_marginLeft="20dip"
   android:layout_width="fill_parent"
   android:layout_height="wrap_content"/>

光這樣太枯燥了,這里我做了個拖動切換圖片的小例子。這里就要介紹下拖動條的長度了這個長度是可控制的像這里我有5張圖片拖動條的size就是5.這個設(shè)置我直接寫在了程序里。實現(xiàn)很簡單就是在拖動條的基礎(chǔ)上加個ImageView,然后對拖動條進行拖動的監(jiān)聽值改變了就切換ImageView就好了。下面是主要代碼。

bar=(SeekBar)this.findViewById(R.id.seek);
imageview=(ImageView)this.findViewById(R.id.img);
bar.setMax(5);
bar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
  public void onStopTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub
  }
  public void onStartTrackingTouch(SeekBar seekBar) {
    // TODO Auto-generated method stub
  }
  public void onProgressChanged(SeekBar seekBar, int progress,
      boolean fromUser) {
    //切換圖片
    imageview.setImageResource(imagedata[seekBar.getProgress()]);
  }
});

效果圖如下所示,我覺得還是挺好的。

2. 下面就是評分插件了,android默認情況下是五角星,如果有必要可以弄成別的

這里我弄了一種自定義的類型,來看下吧

(1)在drawable下面弄個xml文件內(nèi)容如下

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:id="@+android:id/background"
    android:drawable="@drawable/star_empty"
 />
  <item android:id="@+android:id/secondaryProgress"
    android:drawable="@drawable/star_empty"
 />
  <item android:id="@+android:id/progress"
    android:drawable="@drawable/star_full"
 />
</layer-list>

star_empty是灰色的五角星,star_full是黃色的五角星。上面的配置文件理解起來也很簡單,下面就把這個樣式嵌入到評分組件上,首先還是寫個樣式文件

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <style
  name="ratingbarstyle"
  parent="@android:style/Widget.RatingBar">
  <item name="android:progressDrawable">
    @drawable/starconfig
  </item>
  <item name="android:minHeight">53dip</item>
   <item name="android:maxHeight">53dip</item>
 </style>
</resources>

順便說明下starconfig就是上面那個配置文件,下面就是標(biāo)簽了,該組件的常用屬性是步長、星星的個數(shù)就像下面這樣

<RatingBar
    android:id="@+id/rating"
    android:numStars="5"
    android:stepSize="1"
    style="@style/ratingbarstyle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

后面也自然是事件處理了

rbar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
  public void onRatingChanged(RatingBar ratingBar, float rating,
      boolean fromUser) {
    int num=(int)rating;
    String result=null;
    switch (num) {
    case 1:
      result="非常不滿意";
      break;
    case 2:
      result="不滿意";
      break;
    case 3:
      result="還可以";
      break;
    case 4:
      result="滿意";
      break;
    case 5:
      result="非常滿意";
      break;
    default:
      break;
    }
    Toast.makeText(MyDailogActivity.this, result, 1).show();
  }
});

來看下效果吧

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android基本組件用法總結(jié)》、《Android開發(fā)入門與進階教程》、《Android布局layout技巧總結(jié)》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

最新評論

清原| 阿城市| 金寨县| 巴里| 泰和县| 铜鼓县| 南雄市| 天台县| 平利县| 顺义区| 汪清县| 游戏| 昌黎县| 且末县| 宣汉县| 资中县| 当雄县| 新疆| 太仆寺旗| 盖州市| 阿瓦提县| 保亭| 若尔盖县| 东平县| 清涧县| 九寨沟县| 许昌市| 武川县| 南部县| 兴城市| 平乐县| 新巴尔虎右旗| 米林县| 长寿区| 涟水县| 广灵县| 凤庆县| 襄樊市| 渭源县| 逊克县| 建始县|