零点异常

时间:2014-06-21 10:44:51

标签: android

我是Android应用程序开发的新手。我开发了一个基本应用程序,并在特定行发现了零点错误,并添加了if(instance!= null){做某事}。但是如果ie,那就做一些事情部分永远不会被执行。我该如何解决这个问题?这样我的应用程序可以运行属性

 public class MainActivity extends ActionBarActivity {  
      private Button btn1;
      private ImageView imagetoshow;
      @Override
      protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);         
         btn1=(Button)findViewById(R.id.button1);          
         imagetoshow=(ImageView)findViewById(R.id.imageView1);        
         if(btn1!=null){        
              btn1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                     imagetoshow.setImageResource(R.drawable.image1);                   
                }
               }); 
          }      
          if (savedInstanceState == null) {
                getSupportFragmentManager().beginTransaction()
                      .add(R.id.container, new PlaceholderFragment())
                      .commit();
           }
        }           
        @Override
       public boolean onCreateOptionsMenu(Menu menu) {      
         // Inflate the menu; this adds items to the action bar if it is present.
          getMenuInflater().inflate(R.menu.main, menu);
          return true;
      }

     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
         // Handle action bar item clicks here. The action bar will
         // automatically handle clicks on the Home/Up button, so long
         // as you specify a parent activity in AndroidManifest.xml.
         int id = item.getItemId();
         if (id == R.id.action_settings) {
             return true;
         }
         return super.onOptionsItemSelected(item);
     }

     /**
      * A placeholder fragment containing a simple view.
      */
     public static class PlaceholderFragment extends Fragment {

         public PlaceholderFragment() {
         }

         @Override
         public View onCreateView(LayoutInflater inflater, ViewGroup container,
                 Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.fragment_main, container, false);
             return rootView;
         }
        }

     }

2 个答案:

答案 0 :(得分:2)

由于if (instance != null)语句不正确,因此未执行代码。如果您希望该代码运行,并且您不希望有NullPointerException,则初始化哪个变量为null(即给它一个值)。此时,您可以删除空检查,也不再需要它。

如果您想要更详细的答案,请发布您的代码。

答案 1 :(得分:1)

确保已将相关布局文件与Activity类相关联,并且您已在“Android Manifest”中声明了您的Activity。如果不是这种情况,请将您的代码发送给我,以便我帮助您跟踪问题。