2016-11-23 47 views
0

因此,我正在尝试运行一个活动,并且在单击片段中的按钮时得到“没有应用程序可以执行此操作”。接收“没有应用程序可以执行此操作”而开始活动

第一主活动的意图声明:

Intent setTable = new Intent(this, setTable.class); 

通过点击按钮运行的方法:

@Override 
public void miscNext(){ 

    startActivity(setTable); 

} 

片段按钮上点击:

next.setOnClickListener(new View.OnClickListener(){ 
      @Override 
      public void onClick(View view){ 

       for(int i = 0; i < data.getDays(); i++){ 
        String tempChecker = miscNum[i].getText().toString(); 

        if(!tempChecker.isEmpty()){ 

         data.setBreaks(i, Integer.parseInt(miscNum[i].getText().toString())); 

        } else{ 

         break; 
        } 

        if(i == (data.getDays() - 1)){ 
         data.setDoneNames(true); 

        } 

       } 

       data.initNamesArray(); 

       if(data.isDoneNames()){ 

        activityCommander.miscNext(); 
       } 
      } 
     }); 

的其他活动,默认标签活动仅限于更改:

protected void onCreate(Bundle savedInstanceState){ 

     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_set_table); 

     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 
     // Create the adapter that will return a fragment for each of the three 
     // primary sections of the activity. 
     mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); 

     // Set up the ViewPager with the sections adapter. 
     mViewPager = (ViewPager) findViewById(R.id.container); 
     mViewPager.setAdapter(mSectionsPagerAdapter); 

     final TextView day   = new TextView(getApplicationContext()); 
     final Spinner spinnerList[] = new Spinner[data.getSessions(mViewPager.getCurrentItem())]; 
     final TextView session[]  = new TextView[data.getSessions(mViewPager.getCurrentItem())]; 

     day.setText(getDay(data.getFirstDay() + mViewPager.getCurrentItem())); 

     mViewPager.addView(day); 

     //Rules 

     LinearLayout.LayoutParams spinner = new LinearLayout.LayoutParams(
       LinearLayout.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.MATCH_PARENT); 
     LinearLayout.LayoutParams dayRule = new LinearLayout.LayoutParams(
       ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT); 



     ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, data.getNamesArray()); 
     adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 

     for(int i = 0; i < data.getDays(); i++){ 

      spinnerList[i] = new Spinner(getApplicationContext()); 
      session[i] = new TextView(getApplicationContext()); 

      spinnerList[i].setAdapter(adapter); 

      mViewPager.addView(session[i], dayRule); 
      mViewPager.addView(spinnerList[i], spinner); 

     } 


     FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 
     fab.setOnClickListener(new View.OnClickListener(){ 
      @Override 
      public void onClick(View view){ 

       Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) 
         .setAction("Action", null).show(); 
      } 
     }); 

    } 

而且logcat的

11-23 14:21:07.865 9531-9531/com.example.user.timetable_test I/Timeline: Timeline: Activity_launch_request id: time:27674782 
11-23 14:21:15.630 9531-9531/com.example.user.timetable_test V/ActivityThread: updateVisibility : ActivityRecord{7612187 [email protected] {com.example.user.timetable_test/com.example.user.timetable_test.setup.Set_Up}} show : false 
11-23 14:21:19.375 9531-9761/com.example.user.timetable_test D/mali_winsys: new_window_surface returns 0x3000, [1440x2560]-format:1 
11-23 14:21:19.385 9531-9531/com.example.user.timetable_test W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView) 
11-23 14:21:19.385 9531-9531/com.example.user.timetable_test W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView) 
11-23 14:21:19.385 9531-9531/com.example.user.timetable_test W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView) 
11-23 14:21:19.385 9531-9531/com.example.user.timetable_test W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView) 
11-23 14:21:19.385 9531-9531/com.example.user.timetable_test W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView) 
11-23 14:21:19.400 9531-9531/com.example.user.timetable_test I/Timeline: Timeline: Activity_idle id: [email protected] time:27686319 

这可能有点题外话,但没有人知道如何在语法上添加小工具临去标签?

+0

你可以发布你的logcat – SaravInfern

+0

你在哪里设置'activityCommander'? –

+0

在片段中,我对所有其他片段(大约4或5)执行了此操作,并且按钮正常工作。 – Omar

回答

1

如果更改,会发生什么

@Override 
public void miscNext(){ 

    startActivity(setTable); 
} 

通过

@Override 
public void miscNext(){ 

    startActivity(new Intent(this, setTable.class)); 

} 

顺便说一句,如果我理解的很好,Overriden方法public void miscNext()是在一个活动,对不对?

总之,除了问题的一个建议是在Java中,建议命名的第一个字母为大写字母类的,所以它的意思是这样的:

公共类设定

代替

公共类设定

+0

也许logcat会帮助? – Omar

+0

顺便说一句,什么都没有发生 – Omar

+0

你是否正确地在你的Manifest上声明了“setTable”活动?您想要启动“setTable”活动的活动是什么?试图启动时可见吗? – zapotec

0

如果您正在使用的,而不是碎片:

Intent setTable = new Intent(this, setTable.class); 

使用:

Intent setTable = new Intent(getActivity, setTable.class); 
+0

无法解决它:/ – Omar

+0

也许logcat会帮助? – Omar

相关问题