Titanium下拉框效果
運行效果:
app.js代碼:
Titanium.UI.setBackgroundColor('#000'); var win1 = Titanium.UI.createWindow({ backgroundColor:'#000' });
//創(chuàng)建2D矩陣 var tr = Titanium.UI.create2DMatrix(); tr = tr.rotate(90);
//創(chuàng)建下拉效果的Button var drop_button = Titanium.UI.createButton({ style:Titanium.UI.iPhone.SystemButton.DISCLOSURE, transform:tr }); //創(chuàng)建輸入框,設(shè)置右側(cè)下拉按鈕 var my_combo = Titanium.UI.createTextField({ hintText:"選擇一個", height:40, width:300, top:20, borderStyle:Titanium.UI.INPUT_BORDERSTYLE_ROUNDED, rightButton:drop_button, rightButtonMode:Titanium.UI.INPUT_BUTTONMODE_ALWAYS }); //創(chuàng)建視圖 var picker_view = Titanium.UI.createView({ height:251, bottom:-251 }); //創(chuàng)建‘Cancel’按鈕 var cancel = Titanium.UI.createButton({ title:'Cancel', style:Titanium.UI.iPhone.SystemButtonStyle.BORDERED }); //創(chuàng)建‘Done’按鈕 var done = Titanium.UI.createButton({ title:'Done', style:Titanium.UI.iPhone.SystemButtonStyle.DONE }); //創(chuàng)建一個空格按鈕 var spacer = Titanium.UI.createButton({ systemButton:Titanium.UI.iPhone.SystemButton.FLEXIBLE_SPACE }); //創(chuàng)建一個工具欄 var toolbar = Titanium.UI.createToolbar({ top:0, items:[cancel,spacer,done]//工具欄中的內(nèi)容 }); //創(chuàng)建picker選擇器 var picker = Titanium.UI.createPicker({ top:43 }); picker.selectionIndicator=true;
//選擇器數(shù)據(jù) var picker_data = [ Titanium.UI.createPickerRow({title:'MacBook'}), Titanium.UI.createPickerRow({title:'Lenovo'}), Titanium.UI.createPickerRow({title:'Samsun'}), Titanium.UI.createPickerRow({title:'HP'}), Titanium.UI.createPickerRow({title:'Sony'}) ]; //設(shè)置選擇器數(shù)據(jù) picker.add(picker_data);
//添加工具欄至視圖 picker_view.add(toolbar);
//將picker選擇器也添加至視圖 picker_view.add(picker); //創(chuàng)建滑入屏幕特效 var slide_in = Titanium.UI.createAnimation({bottom:0});
//創(chuàng)建滑出屏幕特效 var slide_out = Titanium.UI.createAnimation({bottom:-251}); //給輸入框添加獲得焦點事件 my_combo.addEventListener('focus', function() {
//picker_view滑出屏幕 picker_view.animate(slide_out); }); //給下拉按鈕添加事件 drop_button.addEventListener('click',function() { //picker_view滑入屏幕
picker_view.animate(slide_in);
//讓輸入框失去焦點 my_combo.blur(); }); //取消事件:picker_view滑出屏幕 cancel.addEventListener('click',function() { picker_view.animate(slide_out); }); //選擇事件:將選擇器選擇的值賦給輸入框,并讓picker_view滑出視圖 done.addEventListener('click',function() { my_combo.value = picker.getSelectedRow(0).title; picker_view.animate(slide_out); }); //將視圖、輸入框添加至Window win1.add(picker_view); win1.add(my_combo); win1.open();