亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android開發之關于項目

2020-01-02 07:03:49
字體:
來源:轉載
供稿:網友

本系列文章會根據項目的進度進行相關介紹,其會分為多個模塊,每個模塊互不依賴,各個模塊都是單獨的學習內容,如sqlite學習模塊,contacts聯系人模塊等。

新建項目

相信大部分童鞋都可以自定義項目了,那么在此,我簡單介紹下android studio新建項目的過程。

最終,android studio會為你生成2個build.gradle文件,你可以選擇android視圖瀏覽文件,根據google最新提供的sdk版本,我們把項目設置為api 14~23,打開你的project項目的gradle文件,在dependencies中

classpath 'com.android.tools.build:gradle:1.5.0'

你不必在意這一版本是否和我一致,因為默認的jcenter倉庫使用的是https且服務器在國外,我們將buildscript下的repositories和allprojects下的repositories添加

mavenLocal()maven{ url 'http://maven.oschina.net/content/groups/public/'}

其含義為優先在本地倉庫和開源中國maven倉庫搜尋jar或者aar包。

子模塊

你會發現,android studio會默認為你創建demo模塊,其主要包含3部分:

  1. plugin android插件
  2. android android代碼塊,用于定義app的版本構建信息
  3. dependencies 該模塊的依賴庫

因為該項目會涉及到很多模塊,而每個模塊都會對應一個gradle文件,而每個gradle文件都會有對應的android構建信息,這些信息大部分重復,且維護起來非常困難,因此,我們提前修改:

subprojects{    configure(allprojects - project(':demo')) {    apply plugin: 'com.android.library'    android {      compileSdkVersion 23      buildToolsVersion '23.0.2'        defaultConfig {        minSdkVersion 14        targetSdkVersion 23        versionCode 1        versionName "1.0"      }      lintOptions {        abortOnError false      }    }    dependencies {      testCompile 'junit:junit:4.12'      compile 'com.android.support:appcompat-v7:23.0.2'    }  }

這樣,在你新建的模塊中,你完全可以去除掉該模塊對應的gradle文件中的代碼,是不是很方便?

demo模塊的搭建

該模塊是運行在你手機上的app,所以基本骨架和UI部分需要在此編寫。對應的相關模塊將會如下圖所示:

那么如何展示這些模塊的特性呢?

在此,我向大家介紹AppCompatActivity和ButterKnife以及CoordinatorLayout,AppBarLayout,CollapsingToolbarLayout,Toolbar,NestedScrollView的使用,當然也包括RecyclerView,CardView的使用。

其中大部分都是android v7包中的新組件,需要大家系統學習,ButterKnife則是jk大神的依賴注入框架。

ButterKnife的使用詳解

神馬是ButterKnife,利用注解,你不再使用findviewbyid初始化視圖了。關于ButterKnife的詳細介紹,在此就不多言了,那么如何使用它呢?

在使用它之前,你需要android studio的一個強大插件Zelezny,關于安裝插件,可以翻看第一篇文章:

安裝完成后重啟android studio。

比如現在你在你的activity_main.xml中可以定義一個button,并賦值給其id。然后打開你的MainActivity.java文件,將光標移至R.layout.activity_main上,使用快捷鍵ALT + Insert鍵(注意我使用的eclipse快捷鍵),選擇generate butterknife injections,選擇確認,該插件會自動為你生成@Bind,以及Butterknife.bind(this),就像這樣:

ButterKnife.bind(this)

當你在某activity或者某fragment中使用@Bind注解的時候,你需要在oncreate方法上添加該方法,其含義為綁定該視圖,即@Bind中的id會自動在該視圖對應的layout中尋找,所以其需要在setContentView方法之后添加。特別注意的是ButterKnife.bind(this)在fragment中并不適用,你需要使用:

public class FancyFragment extends Fragment {   @Bind(R.id.button1) Button button1;   @Bind(R.id.button2) Button button2;   @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {          View view = inflater.inflate(R.layout.fancy_fragment, container, false);          ButterKnife.bind(this, view);          // TODO Use fields...          return view;         }   @Override public void onDestroyView() {          super.onDestroyView();          ButterKnife.unbind(this);         }    }

可能你會問了,Butterknife是不是利用反射,那樣將會導致性能問題。其實呢,大家不用擔心,代碼會在加載視圖的時候自動生成,自動生成的代碼如下所示:

public void bind(ExampleActivity activity) { activity.subtitle = (android.widget.TextView) activity.findViewById(2130968578); activity.footer = (android.widget.TextView) activity.findViewById(2130968579); activity.title = (android.widget.TextView) activity.findViewById(2130968577);}

如果大家還是不放心的話,可以利用debug模式,查看bind方法。

監聽綁定

比如你的視圖里面有多個button,這時候,你肯定是先初始化這些button,然后再為每個button添加監聽事件,然后該類實現onClick接口,重寫該接口,利用switch方法,判斷點擊了哪個按鈕。其實,你可以使用ButterKnife:

@OnClick(R.id.submit)public void submit(View view) { // TODO submit data to server...}

而對于的參數是可選的:

@OnClick(R.id.submit)public void submit() { // TODO submit data to server...}

定義一個特殊類型,其會為你自動轉換:

@OnClick(R.id.submit)public void sayHi(Button button) { button.setText("Hello!");}

那么你有多個按鈕呢:

@OnClick({ R.id.door1, R.id.door2, R.id.door3 })public void pickDoor(DoorView door) { if (door.hasPrizeBehind()) {  Toast.makeText(this, "You win!", LENGTH_SHORT).show(); } else {  Toast.makeText(this, "Try again", LENGTH_SHORT).show(); }}

是不是超級方便!??!

關于ButterKnife的詳細介紹和使用方法,你可以查看:http://jakewharton.github.io/butterknife/

好了,今天就講這么多了,下一篇,將會為你帶來項目的搭建和AppCompatActivity,CoordinatorLayout,AppBarLayout,CollapsingToolbarLayout,Toolbar,NestedScrollView的使用?。。?/p>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲精品久久| 69**夜色精品国产69乱| 国产ts人妖一区二区三区| 成人黄色片网站| 91精品久久久久久久久久另类| 国产精品一区二区三区毛片淫片| 亚洲久久久久久久久久久| 1769国内精品视频在线播放| 一本大道亚洲视频| 综合久久五月天| 日韩美女在线看| 亚洲精品国产成人| 91色精品视频在线| 成人淫片在线看| 成人免费高清完整版在线观看| 国产欧美 在线欧美| 日韩免费在线播放| 亚洲女性裸体视频| 国产91网红主播在线观看| 日韩激情av在线播放| 久久免费视频观看| 日韩视频免费中文字幕| 成人有码在线视频| 91在线网站视频| 国内精品久久久久影院 日本资源| 国产成人精品在线播放| 亚洲第五色综合网| 97婷婷涩涩精品一区| 91夜夜未满十八勿入爽爽影院| 国产午夜精品一区理论片飘花| 伊人久久综合97精品| 成人免费黄色网| 亚洲国产精品人久久电影| 日本国产高清不卡| 国产久一一精品| 亚洲精品小视频| 日韩精品视频免费专区在线播放| 成人黄色免费网站在线观看| 55夜色66夜色国产精品视频| 国产97在线播放| 国产一区二区三区精品久久久| 欧美成人激情在线| 国产精品网红直播| 日韩欧美在线视频| 欧美成人剧情片在线观看| 97婷婷大伊香蕉精品视频| 2019中文字幕免费视频| 成人免费看片视频| 日韩中文第一页| 国产精品久久久久久久久久小说| 欧美与欧洲交xxxx免费观看| 美女性感视频久久久| 精品国内自产拍在线观看| 亚洲激情免费观看| 亚洲奶大毛多的老太婆| 国产精品日韩专区| 欧美精品午夜视频| 欧美日韩精品二区| 庆余年2免费日韩剧观看大牛| 国产97在线亚洲| 精品一区二区三区四区| 永久免费精品影视网站| 中国china体内裑精亚洲片| 在线观看视频亚洲| 久久视频在线直播| 亚洲欧美成人网| 九九精品视频在线观看| 久久视频在线观看免费| 亚洲香蕉在线观看| 久久综合色影院| 欧美丰满少妇xxxx| 亚洲国产精彩中文乱码av| 欧美日韩加勒比精品一区| www.欧美精品一二三区| 青青精品视频播放| 国产精品大陆在线观看| 日韩av最新在线| 欧美中文字幕第一页| 亚洲老板91色精品久久| 久久久精品一区| 毛片精品免费在线观看| 久久成人精品电影| 亚洲综合中文字幕在线观看| 国产精品成人一区二区三区吃奶| 亚洲天堂日韩电影| 98精品在线视频| 亚洲电影免费观看高清完整版| 久久中文字幕视频| 欧美精品久久久久久久免费观看| 亚洲综合中文字幕在线| 91精品国产91久久久久福利| 国外日韩电影在线观看| 成人在线视频网站| 国产丝袜一区二区三区| 亚洲老头同性xxxxx| 欧美日韩一区二区在线播放| 日韩欧美精品网站| 日本成人免费在线| 亚洲欧美日韩另类| 国产激情视频一区| 91av视频在线观看| 影音先锋欧美在线资源| 国产精品自拍偷拍视频| 精品久久香蕉国产线看观看gif| 久久久久久12| 曰本色欧美视频在线| 亚洲二区中文字幕| 国产国产精品人在线视| 久久久久久久久久久成人| 国产欧美精品xxxx另类| 国产精品第1页| 国产亚洲人成a一在线v站| 久久五月情影视| 大荫蒂欧美视频另类xxxx| 精品免费在线观看| 欧美黑人国产人伦爽爽爽| 欧美极品在线视频| 国模私拍一区二区三区| 国产亚洲aⅴaaaaaa毛片| 性日韩欧美在线视频| 日韩精品亚洲元码| 久久精品视频网站| 亚洲福利视频专区| 亚洲图片欧美日产| 亚州国产精品久久久| 97超碰蝌蚪网人人做人人爽| 欧美大人香蕉在线| 国产精品久久久久久久久借妻| 欧美电影免费观看网站| 97涩涩爰在线观看亚洲| 日韩av电影手机在线观看| 成人中心免费视频| 久久久伊人日本| 久久精品91久久香蕉加勒比| 精品香蕉在线观看视频一| 国产一区二区三区在线| 日韩中文av在线| 久久精品亚洲一区| 欧美视频在线观看免费| 国产情人节一区| 日本久久亚洲电影| 国产精品亚洲视频在线观看| 欧美激情亚洲一区| 深夜福利亚洲导航| 2019中文字幕全在线观看| 色综合色综合久久综合频道88| 欧美成人中文字幕| 欧美激情视频网| 日韩精品在线观| 亚洲一区精品电影| 久久99久国产精品黄毛片入口| 91av视频在线观看| 136fldh精品导航福利| 久久精品久久久久| 国产成人精品一区| 92国产精品视频| 国产成人av网址| 日韩av在线免费播放| 国产精品av免费在线观看| 欧美激情亚洲国产| 国产精品国语对白| 欧美精品一本久久男人的天堂| 97色在线播放视频| 久久久免费观看视频|