溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中怎么利用Touch實現搜索

發布時間:2021-07-20 14:52:16 來源:億速云 閱讀:158 作者:Leah 欄目:移動開發

本篇文章給大家分享的是有關Android中怎么利用Touch實現搜索,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

一 設計相關界面

java代碼:

Ext.setup({   onReady: function() {   var topToolbar = new Ext.Toolbar({   dock : 'top',   ui: 'dark',   title: 'Sencha Twitter Search'   });   var tpl = new Ext.XTemplate(   '<div id="tweet_container">',   '<tpl for=".">',   '<div class="tweet_data">',   '<div class="tweet_avatar">',   '<img width="30" height="30" src="{profile_image_url}"/>',   '</div>',   '<div class="tweet_content">',   '<a class="user" href="http://twitter.com/{from_user}">{from_user}</a> ',   '{text}',   '</div>',   '<div class="clear"></div>',   '</div>',   '</tpl>',   '</div>'   );   var resultPanel = new Ext.Panel({   layout: 'fit',   style: 'padding-bottom: 10px;',   tpl: tpl   });   var searchPanel = new Ext.Panel({   padding: 10,   layout: {   type: 'hbox',   align: 'stretch'   },   items: [{   flex: 4,   xtype: 'textfield',   style: 'margin-right: 10px;',   id: 'textquery'   },{   flex: 2,   xtype: 'button',   text: 'Search',   handler: function() {   var query = Ext.getCmp("textquery").getValue();   Ext.Ajax.request({   url: 'index.php?act=search&q='+query,   success: function(e) {   var obj = Ext.util.JSON.decode(e.responseText);   var msg = obj.results;   var html = tpl.apply(msg);   resultPanel.update(html);   }   });   }   }]   });   var myPanel = new Ext.Panel({   dockedItems: [topToolbar],   items: [searchPanel, resultPanel],   scroll: 'vertical',   style: 'background: #DDEEF6;',   fullscreen : true   });   }   });

在這里,首先設置了topToolbar標題欄,標題欄的內容為Sencha Twitter Search。接著使用EXT的Ext.XTemplate設計了一個模版,模版中的內容是按照twitter中的格式設計的,即發微博人的相片、用戶名以及所發的言論。而resultPanel中是顯示結果的面板,searchPanel則是輸入檢索條件的面板,其中請注意handler方法,使用query變量獲得了用戶的輸入檢索詞,之后使用get的方法,使用ajax的方式發送到index.php去處理(本例子中把EXTJS代碼和PHP代碼寫在同一個PHP文件中了,當然也可以分開來編寫,那么的話就使用POST方法了),同時,在success的回調函數中,對AJAX調用返回的結果進行處理,

其中,使用var obj = Ext.util.JSON.decode(e.responseText),對檢索的結果JSON格式進行解碼,將返回的JSON格式字符串轉變為JSON格式的對象,并且用tpl.apply(msg),將解析后的結果應用到之前的模版tpl中,***要記得使用resultPanel.update(html);更新一下該區域。

二  PHP獲得twitter內容的代碼

在同一個index.php文件中,通過使用get的方法,發送查詢請求關鍵字到twitter公開的API進行查詢,代碼如下:

java代碼:

if (isset($_GET["act"]) && $_GET["act"] == "search") {   $url = 'http://search.twitter.com/search.json?q='.$_GET["q"];   $content = file_get_contents($url);   $array = json_decode($content);   $data = array();   foreach ($array->results as $var => $value) {   $pattern = '/\b(https?:\/\/[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$])/i';   preg_match_all($pattern, $value->text, $regs);   $loop = count($regs[0]);   for ($i = 0; $i < $loop; $i++) {   $value->text = str_replace($regs[0][$i], '<a class="outlink" href="'.$regs[0][$i].'">'.$regs[0][$i].'</a>', $value->text);   }   $data[] = array(   "profile_image_url" => $value->profile_image_url,   "from_user" => $value->from_user,   "text" => $value->text   );   }   $out = array(   "success" => true,   "results" => $data   );   echo json_encode($out);   exit;   }

以上就是Android中怎么利用Touch實現搜索,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女