Android ViewPager里的所有图片设立监听打开同一活动显示不同图片
Android ViewPager里的所有图片设置监听打开同一活动显示不同图片
Android ViewPager里的所有图片设置监听请看前一文章
为了省时所以2层菜单只做一个点击任意图片后显示相应图片的活动
关键点是每个点击对应的图片如何传参给显示的活动
因为只启动一个活动,所以要把对应要显示的图片告诉活动,显示图片的代码
demoimageview = (ImageView) findViewById(R.id.demoimageView);
demoimageview.setImageResource(imageid);
那就是要把显示的图片ID传过去,但是ViewPager里的图片都是在布局里设置好的
如何设置对应要显示的图片呢,如果在布局那里把要显示的图片写好,用的时候读出来不就行了.
查资料后有个android:tag可用,再查有SetTag()和GetTag(),什么都可放,但是SetTag()要在
代码里执行,不想为每个图片都执行一次,只想增加android:tag,但参考下面例子发现android:tag
好像只能放字符串
http://blog.****.net/xxyy888/article/details/47019143
自己尝试这样写 android:tag="@drawable/tuijian_01" GetTag()后转成int,但传过去发生错误
多次测试后决定用字符串来判断,找到通过字符串查找图片资源ID的方法
http://blog.****.net/wo550415979/article/details/8786577
http://www.tuicool.com/articles/7vmaUrv
最终解决问题
布局里
android:id="@+id/page1_item1"
android:tag="tuijian_d01"
tuijian_d01就是想要对应ID显示的图片名,先设置监听,通过ID来判断然后GetTag,得到字符串
然后查找图片资源ID,传参,启动活动,代码如下
监听的代码,所有点击都启动同一活动
@Override public void onClick(View view) { switch(view.getId()){ case R.id.mainpagelogo: mOpenTabHost.setCurrentTab(1); break; default: //Toast.makeText(this,"Click ok"+view.getId(), Toast.LENGTH_SHORT).show(); Intent intent = new Intent(this, DemoImageViewActivity.class); //从布局中取Tag Object tag = view.getTag(); //如果没有设置Tag就退出 if (tag == null) { break; } String test = tag.toString(); //ctx.getPackageName() //Context ctx = getBaseContext(); //通过字符串查找图片资源ID,如果this出错就有上面的方法 int imageid = getResources().getIdentifier(test, "drawable", this.getPackageName()); //把取到的ID传到下个活动 intent.putExtra("ImageID", imageid); startActivity(intent); break; } }
启动的活动
public class DemoImageViewActivity extends Activity { private ImageView demoimageview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_demo_image_view); Intent intent = getIntent(); int imageid = intent.getIntExtra("ImageID", 0); if (imageid == 0) { finish(); } demoimageview = (ImageView) findViewById(R.id.demoimageView); demoimageview.setImageResource(imageid); demoimageview.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } }); } }
- 1楼icon少女
- 你真的看得懂你的App市场评论吗?,,聚合分析、过滤泡沫、情感可视、发展预测,集四大功能于一体的App印象,是一款帮助App开发运维人员轻松便捷、快速有效的管理手机应用市场里App评论的SaaS产品。,废寝忘食几个月的App终于上线,你是不是又开始对手机应用市场里繁冗的用户评论觉得麻烦、看的头疼?, 1、解决麻烦,将聚合的评论信息通过微信和E-mail帮你每天/每周/每月实时关注你的App评论;,2、拒绝垃圾评论,自动过滤刷出来的泡沫评论信息,再也不用浪费时间;,3、透视评论背后的用户情感,真正把握用户对App的情感倾向;,4、预评不同版本的演化发展态势,聚焦重点主题分类进行对比,真正让评论对版本发展产生积极作用……,App印象,帮你真正看懂你的App评论。