Day21
Time : Jan 25th,2016 / Author : xiaomeixw
library
1.UI:
XhsEmoticonsKeyboard --- (From w446108264) : android emoticonsKeyboard support emoji and user-defined emoticon. easy to integrated into your project. [emoji表情].
MagicViews --- (From ikocijan) : Set custom font in Android application. [Android字体设置].
Dragger --- (From ppamorim) : Animate your activity. [Activity跳转动起来].
SmartTabLayout --- (From ogaclejapan) : A custom ViewPager title strip which gives continuous feedback to the user when scrolling. [TabLayout].
2.Logic:
indirect-injector --- (From sys1yagi & Tag is Injector) : The indirect-injector simplify confusion of communication between activity and fragment, and dependencies. [注入框架].
Activity:
public class MainActivity extends FragmentActivity {
ItemListFragment.Callbacks mCallback = new ItemListFragment.Callbacks() {
@Override
public void onItemSelected(int id) {
//Called from fragment.
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
IndirectInjector.addDependency(this, mCallback);
//initialize
//...
}
Fragment:
public class ItemListFragment extends ListFragment {
public interface Callbacks {
public void onItemSelected(int id);
}
@Inject
private Callbacks mCallbacks;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
IndirectInjector.inject(getActivity(), this);
mCallbacks.onItemSelected(0);
}
}
3.Architecture:
anvil --- (From zserge) : A minimal reactive UI library for Android. [一套reactive方案的UI书写架构].
public int ticktock = 0; public void onCreate(Bundle b) { super.onCreate(b); setContentView(new RenderableView(this) { @Override public void view() { linearLayout(() -> { size(MATCH, MATCH); padding(dip(8)); orientation(LinearLayout.VERTICAL); textView(() -> { size(MATCH, WRAP); text("Tick-tock: " + ticktock); }); button(() -> { size(MATCH, WRAP); text("Close"); // Finish current activity when the button is clicked onClick(v -> finish()); }); }); } }); }
App-Demo
Qiitanium --- (From ogaclejapan Qiitanium is an unofficial Android application of Qiita. [非日本官方Qiita客户端].
Check the Source in Github.Want to know more about the App-Demo see qiita of Janpan
the app-demo with these open source projects
compile fileTree(dir: 'libs', include: ['*.jar']) // Android support library compile 'com.android.support:appcompat-v7:22.1.+' compile 'com.android.support:support-v4:22.1.+' compile 'com.android.support:support-v13:22.0.+' // DI compile 'com.google.dagger:dagger:2.0' apt 'com.google.dagger:dagger-compiler:2.0' provided 'org.glassfish:javax.annotation:10.0-b28' // Logger compile 'com.jakewharton.timber:timber:3.1.0' // HTTP client compile 'com.squareup.okhttp:okhttp:2.3.0' compile 'com.squareup.okhttp:okhttp-urlconnection:2.3.0' // Image downloader & transformer compile 'com.squareup.picasso:picasso:2.5.2' compile 'com.makeramen:roundedimageview:2.0.1' // JSON library compile 'com.google.code.gson:gson:2.3.1' // Reactive library compile 'io.reactivex:rxjava:1.0.10' compile 'com.ogaclejapan:rxbinding:1.1.1@aar' // View library compile 'com.ogaclejapan.arclayout:library:1.0.1@aar' compile 'com.ogaclejapan.smarttablayout:library:1.1.3@aar' compile 'com.ogaclejapan.smarttablayout:utils-v13:1.1.3@aar' compile 'com.twotoasters.jazzylistview:library:1.2.1' compile 'com.sothree.slidinguppanel:library:3.0.0@aar' compile 'com.nispok:snackbar:2.10.8' // Custom font library compile 'com.norbsoft.typefacehelper:library:0.9.0@aar' // HTML Parser compile 'org.jsoup:jsoup:1.8.1' // Crash analytics compile('com.crashlytics.sdk.android:crashlytics:2.2.0@aar') { transitive = true; } // Memory leak detection debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3' releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3.1' // Debug bridge debugCompile 'com.facebook.stetho:stetho:1.1.1' debugCompile 'com.facebook.stetho:stetho-okhttp:1.1.1' debugCompile 'com.facebook.stetho:stetho-timber:1.1.1'
resource
awesome-android-ui --- (From wasabeef A curated list of awesome Android UI/UX libraries. [Android UI 开源控件].
android-open-project --- (From Trinea Collect and classify android open source projects. [Android 开源项目分类汇总].
article
Introducing uCrop, Our Own Image Cropping Library for Android --- (From Author yalantis blog https://yalantis.com/blog/) --- [Source in Github]
We develop lots of different Android apps at Yalantis, and our experience shows that almost every application we deal with needs image cropping functionality. Image cropping can be used for various purposes, from ordinary adjustment of user profile images to more complex features that involve aspect ratio cropping and flexible image transformations. Since we want to provide all our customers with the best set of tools for image editing functionality, we decided to create uCrop, an image cropping library for Android. You might be wondering why we couldn’t just use one of the existing solutions for image cropping for Android. After all, you can find lots of them on Github and on the Android Arsenal. But here is the thing: none of these solutions could satisfy our requirements. Let’s take a quick look at the most popular open-source image cropping libraries and explain why they don’t quite fit the bill.
[Translation:uCrop介绍,我们自己的安卓版图片裁剪库].
Chinese Translation Address : Thanks To jcodecraeer
website
https://yalantis.com/blog/ --- (Build By Yalantis) : Yalantis's Blog [Yalantis技术博客].
![](https://img.shields.io/badge/The%20Day25-End%20!-ED1C24.svg?style=flat)