Demo学会Android互換パッケージの新しいコントロール
15113 ワード
前言
偉大なGoogleはAndroidのために一連の互換パッケージを発売しました.最新はDesign Support Libraryです.ここではv 7とv 4のいくつかのコントロールを組み合わせて、Design Support Libraryのいくつかの新しいコントロールを主に勉強します.Demoはそれらを使うことを学びます!
効果動図GIF:
Design Support Library Demo
学習内容
この例では、次のことを学習できます. DrawerlayoutとNavigationViewは優雅なGoogleスタイルのサイドバーを実現した. 新しいコントロールCoordinatorLayout、AppBarLayout、Toolbar、FloatingActionButtonの使い方、およびToolbarのグラデーション非表示アニメーション効果; 公式TabsコンポーネントTabLayoutとViewPagerを組み合わせてメインインタフェースのコンテンツ領域を実現する. SwipeRefreshLayoutとRecyclerViewを組み合わせてドロップダウン・リフレッシュ、およびRecyclerViewのデータ・アダプタRecyclerViewを実現する.Adapterの使い方は、RecyclerViewのitemのクリックイベントの実現方法もあります. カード式CardViewの使い方; Toastの新しいコントロールSnackbarのような使い方.
レイアウトファイル
ソースコードでAndroidを学ぶのは、臨場感があります.
Androidの解釈を勉強してもいくらコードがあっても役に立たない.説明したからといって、まだ使えない.そこで、ここではレイアウトファイルXMLのソースコードを貼って勉強します.安心してください.すべての知識点はソースコードに注釈されています.
styles.xmlソース
colorPrimary、colorPrimaryDark、colorAccent、textColorPrimaryの意味は、ブログ「Android L+ThemeとToolbarの例」を参照してください.
メインレイアウトactivity_my.xmlソース(ポイント)
content_main.xmlソース(ポイント)
frag_main.xmlソース(Fragmentのレイアウト)
item_main.xmlソース(RecyclerViewでitem)
menu_nav.xmlのソースコード(NavagationViewのメニュー)
header_nav.xmlソース(NavagationViewのhead)
Javaコード
Javaコードの書き方は簡単ですが、ここではRecyclerViewのみを示します.Adapterの書き方(itemクリックイベントを含む).
RecyclerView.Adapter書き方ソース
MyRecyclerViewHolder.JAvaソース
締めくくり
ソースコードでAndroidを学ぶのは、臨場感があります.
DemoのソースコードはGitHubに置いてあります.starさん、ありがとうございます.ソースコードを見ているうちに何か問題があったら、伝言を残して、必ず返事を見てください.
ソースアドレス:Android NewWidgetsDemo
作者のブログのアドレス:アンドロイドサルのブログ
清純な妹.
画像はネットから
清純な妹.
偉大なGoogleはAndroidのために一連の互換パッケージを発売しました.最新はDesign Support Libraryです.ここではv 7とv 4のいくつかのコントロールを組み合わせて、Design Support Libraryのいくつかの新しいコントロールを主に勉強します.Demoはそれらを使うことを学びます!
効果動図GIF:
Design Support Library Demo
学習内容
この例では、次のことを学習できます.
レイアウトファイル
ソースコードでAndroidを学ぶのは、臨場感があります.
Androidの解釈を勉強してもいくらコードがあっても役に立たない.説明したからといって、まだ使えない.そこで、ここではレイアウトファイルXMLのソースコードを貼って勉強します.安心してください.すべての知識点はソースコードに注釈されています.
styles.xmlソース
colorPrimary、colorPrimaryDark、colorAccent、textColorPrimaryの意味は、ブログ「Android L+ThemeとToolbarの例」を参照してください.
メインレイアウトactivity_my.xmlソース(ポイント)
content_main.xmlソース(ポイント)
frag_main.xmlソース(Fragmentのレイアウト)
item_main.xmlソース(RecyclerViewでitem)
menu_nav.xmlのソースコード(NavagationViewのメニュー)
header_nav.xmlソース(NavagationViewのhead)
Javaコード
Javaコードの書き方は簡単ですが、ここではRecyclerViewのみを示します.Adapterの書き方(itemクリックイベントを含む).
RecyclerView.Adapter書き方ソース
package com.sunjiajia.androidnewwidgetsdemo.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.sunjiajia.androidnewwidgetsdemo.R;
import java.util.ArrayList;
import java.util.List;
/**
* Created by Monkey on 2015/6/29.
*/
public class MyRecyclerViewAdapter extends RecyclerView.Adapter {
//
public interface OnItemClickListener {
void onItemClick(View view, int position);
void onItemLongClick(View view, int position);
}
public OnItemClickListener mOnItemClickListener;
public void setOnItemClickListener(OnItemClickListener listener) {
this.mOnItemClickListener = listener;
}
public Context mContext;
public List mDatas;
public LayoutInflater mLayoutInflater;
public MyRecyclerViewAdapter(Context mContext) {
this.mContext = mContext;
mLayoutInflater = LayoutInflater.from(mContext);
// 。
mDatas = new ArrayList<>();
for (int i = 'A'; i <= 'z'; i++) {
mDatas.add((char) i + "");
}
}
/**
* ViewHolder
*/
@Override
public MyRecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View mView = mLayoutInflater.inflate(R.layout.item_main, parent, false);
MyRecyclerViewHolder mViewHolder = new MyRecyclerViewHolder(mView);
return mViewHolder;
}
/**
* ViewHoler, item
*/
@Override
public void onBindViewHolder(final MyRecyclerViewHolder holder, final int position) {
// , RecyclerView
if (mOnItemClickListener != null) {
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mOnItemClickListener.onItemClick(holder.itemView, position);
}
});
//
holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
mOnItemClickListener.onItemLongClick(holder.itemView, position);
return true;
}
});
}
holder.mTextView.setText(mDatas.get(position));
}
@Override
public int getItemCount() {
return mDatas.size();
}
}
MyRecyclerViewHolder.JAvaソース
package com.sunjiajia.androidnewwidgetsdemo.adapter;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.TextView;
import com.sunjiajia.androidnewwidgetsdemo.R;
/**
* Created by Monkey on 2015/6/29.
*/
public class MyRecyclerViewHolder extends RecyclerView.ViewHolder {
public TextView mTextView;
public MyRecyclerViewHolder(View itemView) {
super(itemView);
mTextView = (TextView) itemView.findViewById(R.id.id_textview);
}
}
締めくくり
ソースコードでAndroidを学ぶのは、臨場感があります.
DemoのソースコードはGitHubに置いてあります.starさん、ありがとうございます.ソースコードを見ているうちに何か問題があったら、伝言を残して、必ず返事を見てください.
ソースアドレス:Android NewWidgetsDemo
作者のブログのアドレス:アンドロイドサルのブログ
清純な妹.
画像はネットから
清純な妹.