Day15
Time : November 14th,2015 / Author : xiaomeixw
library
1.UI:
TSnackBar --- (From AndreiD) : Android Snackbar from the Top (similar to Crouton). [从顶部而下的Snackbar].
CharacterPickerView --- (From alafighting) : An Android wheel view like ios system. [仿ios滚轮view].
WheelView --- (From LukeDeighton) : An Android Widget for selecting items that rotate on a wheel. [滚轮盘].
WheelView --- (From wangjiegulu) : An Android wheel view. [滚动view].
WheelView-Android --- (From lantouzi) : An Android wheel view. [滚动选择view].
droidicon --- (From theDazzler) : Over 1600 customizable icons for Android including 750+ Google Material Design icons, 25 ready-made social badges, and more!. [Material Design icons图标].
2.Logic:
Renderers --- (From pedrovgs & Tag is Adapter) : Renderers is an Android library created to avoid all the boilerplate needed to use a RecyclerView/ListView with adapters. [封装的一套ListView和RecyclerView].
//1.Create your Renderer or Renderers extending Renderer<T> public abstract class VideoRenderer extends Renderer<Video> { ...... } //2.Create a RendererBuilder with a Renderer prototypes collection and declare the mapping between the content to render and the Renderer used. public class VideoRendererBuilder extends RendererBuilder<Video> { ...... } //3.Initialize your ListView/RecyclerView with your RendererBuilder and your AdapteeCollection inside Activities and Fragments. private void initListView() { listView.setAdapter(adapter); } private void initListView() { recyclerView.setAdapter(adapter); }
materialup --- (From Alelak) : Unofficial MaterialUp API Wrapper for Android. [MaterialUp(一个UI灵感设计分享网站)的一个非官方的API].
//Get popular posts: MaterialUp.getPosts(context, page, MaterialUp.SORT.POPULAR, new MaterialUpCallback() { @Override public void onSuccess(List <Post> posts, Response response) { // do stuff with posts! } @Override public void onFailure(Request request, IOException e) { // show a toast! } }); //Get latest posts: MaterialUp.getPosts(context, page, MaterialUp.SORT.LATEST, new MaterialUpCallback() { @Override public void onSuccess(List <Post> posts, Response response) { // do stuff with posts! } @Override public void onFailure(Request request, IOException e) { // show a toast! } });
3.Architecture:
screenplay --- (From weefbellington) : A minimalist, View-based application framework for Android. [极简view框架].
public class ExampleStage extends Stage { private final ExampleApplication application; private final Rigger animationRigger; public ExampleStage(ExampleApplication application) { animationRigger = new CrossfadeRigger(application); addComponents(new ClickBindingComponent()); } @Override public int getLayoutId() { return R.layout.example_scene; } @Override public Rigger getRigger() { return animationRigger; } private class ClickBindingComponent implements Component { @Override public void afterSetUp(Stage stage, boolean isInitializing) { View parent = stage.getView(); View nextButton = parent.findViewById(R.id.next); nextButton.setOnClickListener(showNextStage); } @Override public void beforeTearDown(Stage stage, boolean isFinishing) {} private View.OnClickListener showNextStage = new View.OnClickListener() { @Override public void onClick(View v) { // add a new scene to the history and trigger a transition Flow flow = application.getMainFlow(); flow.set(new NextStage(application)); } }; } }
article
What is all this Clean Architecture jibber-jabber about? --- (From Author Pablo Guardiola blog http://pguardiola.com/blog) --- [No Source]
Tately, there are a lot of people in the Android community, talking about Architecture, especially about Clean. That's good news!
I'm pretty sure some of you are familiar with terms like layers, Ports and Adapters, boundaries, etc. but others aren't.
Although Architecture is not new in Mobile development, (E.g. Forgetting Android by Jorge J. Barroso and Software Design patterns on Android by Pedro Vicente Gómez), we developers, after years of hard work, are realising that it's an important aspect if we want our apps to succeed.
So... What's the problem?? [Translation:所有关于Clean Architecture的思考].
Chinese Translation Address : Waiting for someone to Translation it.
App-Demo
UltimateAndroidAppTemplate --- (From AndreiD ) : A ready to use android app template. Powered by Android Annotations Retrofit API ready to be used Picasso for image loading Snackbar, RecyclerView, Pull to Refresh etc. Feedback contact by email for feedback / Settings Page with some dummy settings etc. [使用一些知名的Library组成的模板类型App-Demo].
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
apt "org.androidannotations:androidannotations:$AAVersion"
compile "org.androidannotations:androidannotations-api:$AAVersion"
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:support-v4:23+'
compile 'com.android.support:support-annotations:23+'
compile 'com.android.support:recyclerview-v7:23+'
compile 'com.android.support:design:23+'
compile 'de.greenrobot:eventbus:2.4.0'
compile 'com.squareup.retrofit:retrofit:1.9.0'
compile 'com.squareup.okhttp:okhttp:2.3.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.android.support:recyclerview-v7:23+'
compile 'com.android.support:design:23+'
//-------- app fonts -----------
compile 'uk.co.chrisjenx:calligraphy:2.1.0'
//----- nice progress app ----
compile 'com.akexorcist:RoundCornerProgressBar:2.0.3'
}
![](https://img.shields.io/badge/The%20Day15-End%20!-ED1C24.svg?style=flat)