【发布时间】:2015-05-08 21:58:13
【问题描述】:
我正在使用 Android 通用图像加载器。
在所有示例代码中,视图都是通过 XML 创建的。我需要通过 Java 创建我的视图(不膨胀)。我正在尝试将 View 视图转换为 PhotoDisplayView 对象并调用 .test()。但是 .test() 找不到。
public View getView(int position, View convertView, ViewGroup parent)
{
final ViewHolder holder;
View view = convertView;
if (view == null) {
view = new PhotoDisplayView(parent.getContext());
holder = new ViewHolder();
assert view != null;
holder.imageView = (PhotoDisplayView)view.test();//test() CANNOT BE FOUND
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}
}
这是我的静态类
static class PhotoDisplayView extends FrameLayout
{
public ImageView imageView;
public ProgressBar progressBar;
public PhotoDisplayView(Context context)
{
super(context);
imageView = new ImageView(context);
progressBar = new ProgressBar(context);
}
public void test()
{
Log.d("TEST","TEST");
}
}
我不明白为什么将其转换为 PhotoDisplayView 对象不会让我访问其功能?我获取一个视图对象并将其转换为它的子类版本。为什么找不到方法?
注意:如果我将对象声明为 PhotoDisplayView 而不是 View,我确实可以访问该方法
【问题讨论】:
标签: java android static-methods