从另一个类调用动态按钮
我是java / Android的新手,我想传递我定义了我的按钮属性的方法。 并且该方法是在另一个不能实现Activity的类中编写的。
ex class ViewProvider extends xyz { public Button getButton(){ Button one=new Button(); one.setText("abc"); one.setTypeface(Typeface.DEFAULT_BOLD); //and other properties like color,Gravity ect return one } } Class calcu extends Activity{ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.app_list); ViewProvider v=new ViewProvider(); RelativeLayout relativelayout = new RelativeLayout(this); relativelayout.addView(v.getButton); setContentView(relativelayout); }
但我得到一个错误
只需创建一个Activity数据类型并通过构造函数初始化它,如下所示
class ViewProvider extends xyz Activity activity; { public ViewProvider(Activity activity, JSONObject json) { this.activity = activity; } public Button getButton(activity){ Button one=new Button(); one.setText("abc"); return one }
然后在onCreate上调用如下方法(Bundle savedInstanceState)
ViewProvider v=new ViewProvider(this); RelativeLayout relativelayout = new RelativeLayout(this); relativelayout.addView(v.getButton); setContentView(relativelayout);
如果你看一下按钮@的构造函数,你就有错误的参数。
http://developer.android.com/reference/android/widget/Button.html
Button(Context context) Button(Context context, AttributeSet attrs) Button(Context context, AttributeSet attrs, int defStyle)
所有这三个都将上下文作为一个参数。
我建议你阅读文档
http://developer.android.com/guide/topics/ui/declaring-layout.html
你也有两次setContentView
,这是不必要的。
将按钮初始化为活动本身
Class calcu extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); RelativeLayout relativelayout = new RelativeLayout(this); Button one=new Button(this); one.setText("abc"); relativelayout.addView(one); setContentView(relativelayout); } }
- StorageException:代码:-13000 HttpResult:0将文件上传到Firebase
- 我可以在java中的公共类中调用参数化构造函数中的默认构造函数吗?
- Elasticsearch – NoNodeAvailableException
- 上次编译的Java打印时间
- 如何将我的Java应用程序日志记录事件映射到GCP中的相应云记录事件级别Felastic非compat App Engine?
- 日志消息中的美元符号($)的含义
- ImagesService.getServingUrl的URL持续多长时间
- Android:“意外的流结束”exception下载大文件
- 将图像添加到Custom AlertDialog