參考網上**自己做了乙個客戶定製 preference,沒有使用 preference的 android:layout 屬性,因為總覺得在不同版本系統上難以和其他preference的控制項對齊,所以採用僅設定 android:widget_layout 的方式。
先建立自己要定製的 widget_layout 檔案「preference_widget_seekbar.xml」:
<?xml version="1.0" encoding="utf-8"?>
建立 com.sample.preference.seekbarpreference 類,用來初始化介面,同步音量滑塊表示的preference資料
package com.sample.preference;
import com.sample.r;
import android.content.context;
import android.content.res.typedarray;
import android.preference.preference;
import android.util.attributeset;
import android.util.log;
import android.view.layoutinflater;
import android.view.view;
import android.view.viewgroup;
import android.view.viewparent;
import android.widget.relativelayout;
import android.widget.seekbar;
import android.widget.seekbar.onseekbarchangelistener;
import android.widget.textview;
public class seekbarpreference extends preference
implements onseekbarchangelistener
public seekbarpreference(context context, attributeset attrs, int defstyle)
private void initpreference(context context, attributeset attrs)
private void updatevaluesfromxml(attributeset attrs)
}catch(exception e)
}private string getattributestringvalue(attributeset attrs, string namespace, string name, string defaultvalue)
@override
protected view oncreateview(viewgroup parent)
@override
public void onbindview(view view)
if( null != mseekbar )
textview unitsright = (textview)view.findviewbyid(r.id.seekbarprefunitsright);
if( null != unitsright )
textview unitsleft = (textview)view.findviewbyid(r.id.seekbarprefunitsleft);
if( null != unitsleft )
}@override
public void onprogresschanged(seekbar seekbar, int progress, boolean fromuser)
// change accepted, store it
mcurrentvalue = newvalue;
if( null != mcurrentvaluetext )
persistint(newvalue);
}@override
public void onstarttrackingtouch(seekbar seekbar) {}
@override
public void onstoptrackingtouch(seekbar seekbar)
@override
protected object ongetdefaultvalue(typedarray ta, int index)
@override
protected void onsetinitialvalue(boolean restorevalue, object defaultvalue)
else
catch(exception ex)
persistint(temp);
mcurrentvalue = temp;}}
}
最後,在preference xml中加入對應項
<?xml version="1.0" encoding="utf-8"?>
Mac OS X 音量控制等
1.設定開機音音量大小 靜音 sudo nvram systemaudiovolume 80 音量最小 sudo nvram systemaudiovolume 00 音量最大 sudo nvram systemaudiovolume 2 注意 當使用者在os x中改變音量後,這個系統值也會隨著改變...
易語言音量控制軟體製作教學
易語言開發簡單音量程式設計客棧控制軟體。1 在程式選單選擇新建 windows視窗程式,適當的點選程式邊角放大程式介面。2 在工作夾下方點選程式,雙擊模組引用表,找到準備好的 精易模組5.01.ec 的路徑,並開啟。3 在工作夾下方點選屬性,修改程式的標題為 簡單音量控制軟體 4 在視窗元件箱中的基...
CSS3實現音量控制動畫
先上效果圖,由於時間關係,記錄下實現過程。仔細 效果,實現思路及用到的css3如下 採用svg繪製喇叭主體 假定喇叭由左右2個path組成 動效實現 1,插入聲波弧線並將位置matrix到喇叭口的豎線上 2,這樣通過控制css animate控制opacity及matrix即可達到聲波紋動畫 3,為...