我不确定我做对了。我怀疑的主要原因是我在这个或其他论坛中找不到做过类似事情的人。
我在项目中创建了一个抽象的java类。将其命名为 lib 。我在项目中为所有其他类使用了几种结构和方法。
对我有用,但我想知道是否有更多可接受的方法来收集所有常用的方法和结构。
注意:当然,所有方法都被声明为公共静态。
注意II :我不知道如何在抽象类中获取上下文,因此如果需要,我必须将它作为参数传递给方法。
答案 0 :(得分:0)
这是你要找的那个吗?
public abstract class AbstractActivity extends Activity{
public static synchronized boolean showAlertBox(Context ctx,final String title,final String message,final String okBtnTxt,final OnClickListener clickListener){
AlertDialog.Builder alertbox; alertbox = new AlertDialog.Builder(ctx);
this.runOnUiThread(new Runnable() {
@Override
public void run() {
alertbox.setTitle(title);
alertbox.setMessage(message);
if(okBtnTxt!=null || clickListener!=null)
alertbox.setNeutralButton(okBtnTxt,clickListener);
alertbox.show();
.....
}
});
return true;
}
}
在扩展这个抽象类的类中,你可以使用showAlertBox(this)来调用它。 其他明智的使用AbstractActivity.showAlertBox(Context);
答案 1 :(得分:0)
好吧,多亏了@Matt Wolfe的评论,我才知道我所做的是“实用类”,它被广泛用于共享项目中的公共代码。 一般模板是:
public abstract class lib {
public static final int ZERO = 0;
public static final int ONE = 1;
public static final int TWO = 2;
public static void func1(int i) {
}
public static void func2(int i, String s) {
}
}
你可以在任何其他代码中使用它:
...;
lib.func1( lib.ZERO );
lib func2( lib.TWO, "sandwich" );
...;
知道这让我对自己所做的事情充满信心。
找到避免前缀lib的方法是完美的。并且只需要ECLIPSE和编译器,找到正确的导入并使用其名称识别该函数,就像它们对全局库一样。