View增加红色数字角标
该项目提供了一种简便的方式,能够在运行期对任意给定的Android view添加徽章, 而不必配合它的布局。可添加的标签包括但不限于右上角的红色数字提醒角标
publicvoidonCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); finalTabHost tabHost = getTabHost(); tabHost.addTab(tabHost.newTabSpec(“demos”) .setIndicator(“Badge Demos”) .setContent(R.id.tab1)); tabHost.addTab(tabHost.newTabSpec(“adapter”) .setIndicator(“List Adapter”) .setContent(R.id.tab2)); tabHost.addTab(tabHost.newTabSpec(“tests”) .setIndicator(“Layout Tests”) .setContent(R.id.tab3)); // *** default badge *** View target = findViewById(R.id.default_target); BadgeView badge =newBadgeView(this, target); badge.setText(“1”); badge.show(); // *** set position *** btnPosition = (Button) findViewById(R.id.position_target); badge1 =newBadgeView(this, btnPosition); badge1.setText(“12”); badge1.setBadgePosition(BadgeView.POSITION_CENTER); btnPosition.setOnClickListener(newOnClickListener() { @Override publicvoidonClick(View v) { badge1.toggle(); } }); // *** badge/text size & colour *** btnColour = (Button) findViewById(R.id.colour_target); badge2 =newBadgeView(this, btnColour); badge2.setText(“New!”); badge2.setTextColor(Color.BLUE); badge2.setBadgeBackgroundColor(Color.YELLOW); badge2.setTextSize(12); btnColour.setOnClickListener(newOnClickListener() { @Override publicvoidonClick(View v) { badge2.toggle(); } }); // *** default animation *** btnAnim1 = (Button) findViewById(R.id.anim1_target); badge3 =newBadgeView(this, btnAnim1); badge3.setText(“84”); btnAnim1.setOnClickListener(newOnClickListener() { @Override publicvoidonClick(View v) { badge3.toggle(true); } }); // *** custom animation *** btnAnim2 = (Button) findViewById(R.id.anim2_target); badge4 =newBadgeView(this, btnAnim2); badge4.setText(“123”); badge4.setBadgePosition(BadgeView.POSITION_TOP_LEFT); badge4.setBadgeMargin(15,10); badge4.setBadgeBackgroundColor(Color.parseColor(“#A4C639”)); btnAnim2.setOnClickListener(newOnClickListener() { @Override publicvoidonClick(View v) { TranslateAnimation anim =newTranslateAnimation(-100,0,0,0); anim.setInterpolator(newBounceInterpolator()); anim.setDuration(1000); badge4.toggle(anim,null); } }); // *** custom background *** btnCustom = (Button) findViewById(R.id.custom_target); badge5 =newBadgeView(this, btnCustom); badge5.setText(“37”); badge5.setBackgroundResource(R.drawable.badge_ifaux); badge5.setTextSize(16); btnCustom.setOnClickListener(newOnClickListener() { @Override publicvoidonClick(View v) { badge5.toggle(true); } });
原文地址:https://www.haolizi.net/example/view_10496.html
相关推荐
-
关于int的范围以及溢出问题 Java基础
2019-8-15
-
Leader:这样的 Bug 你也写的出来??? Java基础
2020-6-13
-
Java多线程同步工具类之CountDownLatch Java基础
2019-9-6
-
浅谈Java的Fork/Join并发框架 Java基础
2020-5-30
-
String、StringBuffer和StringBuilder的区别 Java基础
2020-6-14
-
快速入门:弄懂Kafka的消息流转过程 Java基础
2019-6-26
-
虚拟机字节码执行引擎 Java基础
2019-9-15
-
Java 静态代理与动态代理 Java基础
2019-9-3
-
在数据库中存储一棵树,实现无限级分类 Java基础
2018-4-16
-
Redis设计原理 Java基础
2019-9-8