安卓中的viewpager用view填充页面,时间处理怎么办?

最近做了一个项目,用到一个viewpager,我知道可以用两种方式填充每个页面,fragment和view,我图方便,采用了view的方式,可是当我控件都加载在每个view的布局文件里面的时候,我发现,我不能处理他们的事件,比如说我在某一页中有一个imageview,我要点击它并换掉他的背景,我就在主要的mainactivity.java中初始化了控件并设置了点击事件,此时运行后程序崩溃,我分析一遍觉得是在主maniactivity中这样写,view不可能得到改变,因为它在程序运行初期就已经在oncreate中被添加到了list中,后面再怎么处理都不可能被改变,除非只是做一些展示作用,比如放几张照片之类的. 而对于我的项目,我需要处理每一页的很多点击事件,而又不可能只在一个mainacticity中实现,所以我觉的我是不是该改用fragment的方式去实现我的目的,请大神能给一个合理的说明,如果可以,请帮忙说下view和fragment的处理事件都应该怎么搞,另外我想知道正常的项目中包应该如何划分?多谢啦

应该不是,,你应该先搞清楚具体的错误信息,然后对着logcat日志再找原因

把错误log 贴出来 可以试着解决

你要确定fragment 已经获取到控件了,在确定fragment已经获取控件的情况下可以将view部分的逻辑写到fragment里面的

这个是我的maninactivity文件,大多数我都做了标识,希望大神可以帮忙看看,我不知道用view的方式怎么去处理那些点击事件
package cn.iot.main;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import cn.iot.sildingmenu.SlidingMenu;
import cn.iot.ui_design.R;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnTouchListener;
import android.view.Window;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {
/**
* 目前的问题:
* (1)蓝牙连接问题、
* (2)首页中listview和viewpager的侧滑冲突问题、
* (3)布局规划问题
*/
public SlidingMenu mleftMenu;
private ListviewList;
private ViewPager viewpager;

private View view_beiwang;
private View view_search;
private View view_firstpage;
private View view_forgotten;
private View view_citysearch;

private TextView tv1;
private TextView tv2;
private TextView tv3;
private TextView tv4;
private TextView tv5;

private ImageView image_connect;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_main);
    mleftMenu = (SlidingMenu) findViewById(R.id.id_menu);  
    image_connect= (ImageView) findViewById(R.id.image_connect);


    viewList=new ArrayList<View>();
    //初始化并转化为view对象
    view_beiwang = View.inflate(this, R.layout.view_beiwang,null);
    view_search = View.inflate(this, R.layout.view_search,null);
    view_firstpage = View.inflate(this, R.layout.view_firstpage,null);
    view_forgotten = View.inflate(this, R.layout.view_forgotten,null);
    view_citysearch = View.inflate(this, R.layout.view_citysearch,null);

    viewList.add(view_beiwang);
    viewList.add(view_search);
    viewList.add(view_firstpage);
    viewList.add(view_forgotten);
    viewList.add(view_citysearch);

    //初始化viewPager
    //设置viewpager的滑动事件
    viewpager = (ViewPager) findViewById(R.id.viewpager);
    viewpager.setOnTouchListener(new OnTouchListener() {        
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            // TODO Auto-generated method stub
            v.getParent().requestDisallowInterceptTouchEvent(true);//这一句是告诉父类事件,不要去处理我的touch事件
            return false;
        }
    });


    //建立适配器的对象
    MypagerAdapter adapter = new MypagerAdapter(viewList);
    //给viewpager添加适配器
    viewpager.setAdapter(adapter);

    //初始化五个textview
    tv1 = (TextView) findViewById(R.id.textview_beiwang);
    tv2 = (TextView) findViewById(R.id.textview_search);
    tv3 = (TextView) findViewById(R.id.textview_firstpage);
    tv4 = (TextView) findViewById(R.id.textview_forgotton);
    tv5 = (TextView) findViewById(R.id.textview_citysearch);
    //添加点击事件
    tv1.setOnClickListener(this);
    tv2.setOnClickListener(this);
    tv3.setOnClickListener(this);
    tv4.setOnClickListener(this);
    tv5.setOnClickListener(this);

}
//用来为首页Imageview添加点击事件
public void bt_connect(View v){
    //考虑此处加一个fragment或者view
    Toast.makeText(this, "我是连接按钮", Toast.LENGTH_SHORT).show();

    image_connect.setImageDrawable(getResources().getDrawable(R.drawable.connet));
}

//这是侧滑菜单的点击事件
public void toggleMenu(View v){
        mleftMenu.toggle();
}
//每个底部按钮对应的view
@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
    switch (v.getId()) {
    case R.id.textview_beiwang:
        viewpager.setCurrentItem(0,false);
        break;
    case R.id.textview_search:
        viewpager.setCurrentItem(1,false);
        break;
    case R.id.textview_firstpage:
        viewpager.setCurrentItem(2,false);
        break;
    case R.id.textview_forgotton:
        viewpager.setCurrentItem(3,false);
        break;
    case R.id.textview_citysearch:
        viewpager.setCurrentItem(4,false);
        break;
    }   
}

}


这张图片是我的主界面图片,有侧滑菜单和底部view还有viewpager组成:图片说明

我在首页做了一个,点击连接然后切换图片的事件,这是我点击首页上的连接的时候出现的错误:图片说明