在编写Android应用程序时,很多时候都需要自己来扩张Android的view类。 这里介绍一个最基本的扩展View类:利用TextView和ImageView组合成我们自己的IconTextView类。

 

第一步:我们必须先创建一个包含了有String mText 和 Drawable mIcon数据成员的类,并且该类中应包含有对这两个数据成员进行Set和Get的成员函数。

package hi.braincol.local.filebrowser.icontextlist;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import android.graphics.drawable.Drawable;
//IconText类,该类中主要有两个数据成员:String mText 和 Drawable mIcon。
//并实现了泛型接口Comparable<?>,实现这个接口的目的是为了
//让类似于"List<IconText> Entries = new ArrayList<IconText>();"
//的对象Entries具有排序功能"Collections.sort(Entries);"
public class IconText implements Comparable<IconText>{
    private String mText = " ";
    private Drawable mIcon;
    private boolean mSelectable = true;
    public IconifiedText(String text, Drawable bullet) {
        mIcon = bullet;
        mText = text;
    }
    public boolean isSelectable() {
        return mSelectable;
    }
    public void setSelectable(boolean selectable) {
        mSelectable = selectable;
    }
    //获取Text
    public String getText() {
        return mText;
    }
    //设置Text
    public void setText(String text) {
        mText = text;
    }
    //获取Icon
    public void setIcon(Drawable icon) {
        mIcon = icon;
    }
    //设置Icon
    public Drawable getIcon() {
        return mIcon;
    }
    //Comparable<?>接口中的方法
    @Override
    public int compareTo(IconText other) {
        if(this.mText != null)
            return this.mText.compareTo(other.getText()); 
        else 
            throw new IllegalArgumentException();
    }
}

相关文章:

  • 2021-11-01
  • 2022-12-23
  • 2021-11-05
  • 2022-12-23
  • 2022-12-23
  • 2021-05-19
  • 2021-12-14
  • 2021-12-23
猜你喜欢
  • 2022-12-23
  • 2021-12-29
  • 2021-11-24
  • 2021-12-28
  • 2021-10-21
  • 2021-07-18
相关资源
相似解决方案