无法在appCompatActivity中启动活动

时间:2015-11-12 07:57:24

标签: android android-intent

当我将活动更改为appCompatActivity时,我无法开始活动;

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
    if (requestCode == BaseDef.REQUEST_CODE_CAMERA)
    {
        if (resultCode == RESULT_OK)
        {
            //use uri member variable...
            //it has the image that was captured
        }
    }
}

并在清单文件中添加:

public class NavigActivity extends AppCompatActivity
    implements NavigationView.OnNavigationItemSelectedListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_navig);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);


    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
            this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
    drawer.setDrawerListener(toggle);
    toggle.syncState();

    final NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(this);

    //********   Introduction Button    **********
    ImageView introBtn = (ImageView) findViewById(R.id.introduc_image);
    introBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(NavigActivity.this, IntroductionActivity.class);
            startActivities(intent);
            Snackbar.make(view, "معرفی روستا", Snackbar.LENGTH_LONG).setAction("Action", null).show();
        }
    });

,错误是:

  

错误:(50,17)错误:找不到适合startActivities的方法(Intent)   方法Activity.startActivities(Intent [],Bundle)不适用   (实际和正式的参数列表长度不同)   方法Activity.startActivities(Intent [])不适用   (实际参数Intent无法通过方法调用转换转换为Intent [])   方法ContextWrapper.startActivities(Intent [],Bundle)不适用   (实际和正式的参数列表长度不同)   方法ContextWrapper.startActivities(Intent [])不适用   (实际参数Intent无法通过方法调用转换转换为Intent [])   方法Context.startActivities(Intent [],Bundle)不适用   (实际和正式的参数列表长度不同)   方法Context.startActivities(Intent [])不适用   (实际参数Intent无法通过方法调用转换转换为Intent [])

我将意图参数 <activity android:name=".NavigActivity" android:theme="@style/AppTheme.NoActionBar"> </activity> <activity android:name=".IntroductionActivity" android:label="@string/title_activity_introduction" android:parentActivityName=".NavigActivity" android:theme="@style/AppTheme.NoActionBar" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="android.arisa.kalahroodfinal.NavigActivity" /> </activity> 更改为NavigActivity.thisview.getContext,但我仍然有错误。

2 个答案:

答案 0 :(得分:2)

startActivity(intent);而非startActivities(intent);

同时添加finish();以停止当前活动

答案 1 :(得分:1)

回答太晚了,但我只想弄清楚如何解决。 问题是关于主题

我接受你的appcompat主题就像在values / styles.xml中那样;

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    ...
</style>
AndroidManifest.xml中的

;

扩展活动的活动

    <activity
        android:name="package.name.WelcomeActivity"
        android:label="@string/app_name"

        android:theme="@style/AppTheme.NoActionBar" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

扩展AppCompat的活动

<activity
        android:name="package.name.MainActivity"
        android:theme="@style/AppTheme.NoActionBar" >
    </activity>

希望它对某人有所帮助。