zoukankan      html  css  js  c++  java
  • Android开发工程师文集-Android知识点讲解

    前言

    大家好,我是 Vic,今天给大家带来Android开发工程师文集-Android知识点讲解的概述,希望你们喜欢

    WebView讲解

    一般通过Intent调用系统的浏览器:

    Uri uri = Uri.parse(url);
    Intent intent = new Intent(Intent.ACTION_VIEW,uri);
    startActivity(intent);
    

    什么是WebView,其实单词的字面理解就可以了,可以知道Android中提供了这个元素来显示页面。

    接下来,需要你创建布局文件,关于WebView的即可:

    <WebView
     android:id="@+id/WebView"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
    </WebView>
    

    如果用到WebView,就要用到loadUrl()的方法来进行调用,加载我们所需的页面。这个方法可以调用web资源,也可以调用本地我们直接写好的资源。

    1. webView.loadUrl("http://janshu.com");
    2. webView.loadUrl("本地资源");
    3. webView.requestFocus();
    

    这个是什么意思呢,表示直接打开

    webView.setWebViewClient(new WebViewClient());

    public boolean shouldOverrideUrlLoading(WebView view,String url){
     view.loadUrl(url);
     return true;
    }
    

    使用Javascript打开

    WebView webView = findViewById(R.id.webview);
    WebSttings webSettings = webView.getSettings();
    webSettings.setJavaScriptEnabled(true);
    

    了解一下onKeyDown()的方法,进行退出程序:

    public boolean onKeyDown(int keyCode, keyEvent event){
     if(keyCode==KeyEvent.KEYCODE_BACK){
      if(webView.canGoBack()){
       webView.goBack();
       return true;
      }
      else
      {
        System.exit(0);//退出程序
       }
      }
     return super.onKeyDown(keyCode, event);
    }
    

    用下面的来显示加载过程:

    setWebChromeClient()->new WebChromeClient()

    ProgressDialog

    开启进度条的显示:

    private void openDialog(int newProgress){
     if(dialog==null){
      dialog=new ProgressDialog(MainActivity.this);
      dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTL);
      dialog.setProgress(newProgress);
      dialog.show();
      }
       else{
        dialog.setProgress(newProgress);
    }
    

    关闭进度条:

    private void closeDialog(){
     if(dialog!=null&&dialog.isShowing()){
      dialog.dismiss();
      dialog=null;
      }
    }
    

    Fragment

    FragmentManager fragmentManager = getFragmentManager();
    FragementTransaction beginTransaction = fragmentManager.beginTransaction();
    

    动态是最常用的,可以通过add(),remove(),replace(),commit(),addToBackStack()的方法处理Fragment

    Fragment的生命周期

    它的生命周期会受到Activity的影响

    启动Fragment:

    onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume()

    关掉:

    onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume()
    onPause()->onStop()

    重启:

    onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume()
    onPause()->onStop()
    onStart()->onResume()

    启动第二个Fragment:

    onPause()->onStop()->onDestroyView()->onDestroy()->onDetach()->onAttach()->onCreate()->onCreateView()->onActivityCreated()->onStart()->onResume()

    顶部导航

    ViewPager

    <android.support.v4.view.ViewPager 
     android:id="@+id/pager"
     android:layout_height="wrap_content"
     android:layout_width="wrap_content"
     android:layout_gravity="center"/>
    

    如果觉得不错,那就点个赞吧!❤️

    总结

    • Android开发工程师文集-Android知识点讲解-记录美好生活,如果您还有更好地理解,欢迎沟通
    • 定位:分享 Android&Java知识点,有兴趣可以继续关注
  • 相关阅读:
    Java实现 LeetCode 400 第N个数字
    Java实现 LeetCode 400 第N个数字
    Java实现 LeetCode 399 除法求值
    Java实现 LeetCode 399 除法求值
    Java实现 LeetCode 399 除法求值
    Java实现 LeetCode 398 随机数索引
    Java实现 LeetCode 398 随机数索引
    Java实现 LeetCode 398 随机数索引
    linux中的cd ..和cd -命令有什么区别?
    GCC使用
  • 原文地址:https://www.cnblogs.com/dashucoding/p/11932628.html
Copyright © 2011-2022 走看看