我们在Android或Java中多次遇到以下代码或类似内容.这段代码似乎包含重复,这根本不是一个好习惯.必须有一些更好的方法来做到这一点.有没有更短的代码来实现这一目标?
Intent intent=null; switch (v.getID()) { case R.ID.details: intent = new Intent(this, DetailsActivity.class); break; case R.ID.apply: intent = new Intent(this, ApplyActivity.class); break; case R.ID.edit: intent = new Intent(this, Editactivity.class); break; case R.ID.upload: intent = new Intent(this, UploadActivity.class); break; case R.ID.call: intent = new Intent(this, CallActivity.class); break; } startActivity(intent);
解决方法:
为静态初始化程序或构造函数中的活动类创建ID表:
HashMap<Integer, Class<?>> map = new HashMap<>();map.put(R.ID.foo, Foo.class); // repeat for each ID/class pair
然后使用地图而不是开关:
startActivity(new Intent(this), map.get(v.getID()));
总结 以上是内存溢出为你收集整理的java-在android中处理多重意图的更好方法是什么?全部内容,希望文章能够帮你解决java-在android中处理多重意图的更好方法是什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)