Android tickplusdrawable(TickPlusDrawable)
Android tickplusdrawable(TickPlusDrawable)是一个状态可以通过动画切换的按钮,如动态图所示:
使用Android tickplusdrawable(TickPlusDrawable),只需要在自己的View中把Android tickplusdrawable(TickPlusDrawable)衬托进去作为背景即可。比如Java代码:
package com.flavienlaurent.tickplusdrawable;
import android.annotation.TargetApi;
import android.app.Activity;
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 一个空白的没有任何内容的view
View view = findViewById(R.id.view);
final TickPlusDrawable tickPlusDrawable = new TickPlusDrawable(
getResources().getDimensionPixelSize(R.dimen.stroke_width),
getResources().getColor(android.R.color.holo_blue_dark), Color.WHITE);
view.setBackground(tickPlusDrawable);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 动画切换的开与关
tickPlusDrawable.toggle();
}
});
}
}
布局文件:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<View
android:id="@+id/view"
android:layout_width="128dp"
android:layout_height="128dp"
android:layout_gravity="center"
android:padding="30dp" />
</FrameLayout>
只是一个空白的View。
背景颜色之所以是黄色,是因为在res/values/styles.xml定义了相关窗口颜色:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.Light.NoActionBar.Fullscreen">
<item name="android:windowBackground">@android:color/holo_orange_light</item>
</style>
</resources>
Android tickplusdrawable(TickPlusDrawable)在github上的项目主页是:https://github.com/flavienlaurent/tickplusdrawable