編輯:關於android開發
前人經驗:
開源控件:一個自定義的帶數字progress類:NumberProgressBar;
WebViewClient就是幫助WebView處理各種通知、請求事件的。
WebChromeClient是輔助WebView處理Javascript的對話框,網站圖標,網站title,加載進度等 。
總結:別把簡單的東西復雜化。
NumberProgressBar.java
我的網盤:http://share.weiyun.com/cfda31dae65609c7376d0f9153678a27
style
<style name="NumberProgressBar_Funny_Orange">
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_width">match_parent</item>
<item name="progress_max">100</item>
<item name="progress_current">0</item>
<item name="progress_unreached_color">@android:color/transparent</item>
<item name="progress_reached_color">#f00722</item>
<item name="progress_text_size">10sp</item>
<item name="progress_text_color">#f00722</item>
<item name="progress_reached_bar_height">1.5dp</item>
<item name="progress_unreached_bar_height">0.75dp</item>
</style>
xml布局
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:id="@+id/ticket_web"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="match_parent"></WebView>
<com.etoury.project.ui.view.NumberProgressBar
android:id="@+id/progressbar"
android:layout_width="match_parent"
app:progress_reached_bar_height="2dp"
app:progress_text_size="0sp"
app:progress_text_visibility="invisible"
app:progress_unreached_bar_height="2dp" />
</FrameLayout>
java代碼
pr = (NumberProgressBar) findViewById(R.id.progressbar);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setBlockNetworkImage(false);
webView.getSettings().setAllowFileAccess(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setBlockNetworkLoads(false);
webView.getSettings().setGeolocationEnabled(true);
String url = "http://u.ctrip.com/union/CtripRedirect.aspx?TypeID=650&city="
+"北京"+"&cityid=1&sourceid=1&sid=777206&allianceid=303851&ouid=";
webView.loadUrl(url);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
webView.setVisibility(View.VISIBLE);
super.onPageFinished(view, url);
}
@Override
public void onLoadResource(WebView view, String url) {
if (url.contains("https://accounts.ctrip.com/H5Login/") || url.contains("http://m.ctrip.com/you/place/1")
|| url.contains("http://m.ctrip.com/webapp/diyshx/list/") || url.contains("http://m.ctrip.com/webapp/Hotel/hotel1")) {
view.stopLoading();
}
super.onLoadResource(view, url);
}
});
webView.setWebChromeClient(new WebChromeClient() {
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
super.onGeolocationPermissionsShowPrompt(origin, callback);
callback.invoke(origin, true, false);
}
@Override
public void onProgressChanged(WebView view, int newProgress) {
if (pr == null) return;
pr.setProgress(newProgress);
if (newProgress == 100) {
pr.setVisibility(View.GONE);
} else {
pr.setVisibility(View.VISIBLE);
}
super.onProgressChanged(view, newProgress);
}
});
Android 購物車功能的實現,android購物車實現首先,眾所周知,ListView是Android最常用的控件,可以說是最簡單的控件,也可以說是最復雜的控件。 作
android:eclipse看著很舒服的字體和啟動速度很快android模擬器 下載後 在c盤windows/font文件夾下添加解壓後的字體即可 然後重啟ecli
Android新手入門2016(11)--非阻塞對話框AlertDialog 寫了這麼久,看了這麼多控件,好像都是靜態的,一點交互都沒有。這次要弄點彈框,活躍活躍。 這次
GreenDao3.0新特性解析(配置、注解、加密),greendao3.0新特性Greendao3.0release與7月6日發布,其中最主要的三大改變就是:1.換包名
Android——Listview不用notifydatasetchan