2016-09-30 43 views
0

你好我有一个关于Android活动的问题。Android活动按钮不会工作,当我使用pageviewer

显示java.lang.NullPointerException: 尝试上的空对象引用调用虚拟方法 '空隙android.widget.Button.setOnClickListener (android.view.View $ OnClickListener)'

我想做什么是一个欢迎页面。

我有Main_welcome页面调用

Activity_main。 三个页面布局是welcome_layout1welcome_layout2 and welcome_layout3。

我只有一个活动必须在以下:

public class MainActivity extends AppCompatActivity { 
    private ViewPager myViewPager; 

    private View page1,page2,page3; 

    private List<View> pageList; 
    Button sign; 
    private MypageAdapter mypageAdapter; 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     initView(); 
     Button sign = (Button)this.findViewById(R.id.button_gotosign); 
     sign.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       setContentView(R.layout.sign); 
      } 
     }); 
    } 
    private void initView(){ 
     myViewPager = (ViewPager) findViewById(R.id.welcome_viewpager); 
     LayoutInflater inflater = getLayoutInflater(); 
     page1 = inflater.inflate(R.layout.welcome_layout1, null); 
     page2 = inflater.inflate(R.layout.welcome_layout2, null); 
     page3 = inflater.inflate(R.layout.welcome_layout3, null); 
     pageList = new ArrayList(); 
     pageList.add(page1); 
     pageList.add(page2); 
     pageList.add(page3); 
     mypageAdapter = new MypageAdapter(pageList); 
     myViewPager.setAdapter(mypageAdapter); 


    } 


} 

我有一个名为注册按钮在welcome_layout3

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="@drawable/b3" 
    > 


    <Button 
     android:id="@+id/button_gotosign" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:text="sign" 
     android:textSize="@dimen/activity_vertical_margin" 
     android:textColor="#318C83" 
     android:background="#90000000" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentStart="true" 
     android:layout_marginBottom="34dp"> 
    </Button> 


</RelativeLayout> 

我想要做的是,当用户打开这个APP,他会将3张图片打到最后一张,并且有一个按钮可以点击进行签名。

如何使按钮有效?

+0

'setContentView(R.layout.activity_main);':)并且应该是'welcome_layout3'? –

+0

[什么是NullPointerException,以及如何解决它?]可能重复(http://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix-it ) – Ironman

+0

错误消息的准备就绪告诉您导致错误的代码行。这是什么? –

回答