Skip to content

Instantly share code, notes, and snippets.

@codinginflow
Created March 18, 2021 19:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save codinginflow/30c729fe713662cac2def0e717d9b865 to your computer and use it in GitHub Desktop.
Save codinginflow/30c729fe713662cac2def0e717d9b865 to your computer and use it in GitHub Desktop.
Up Button Tutorial
package com.example.application.upbuttonexample;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Activity2 extends AppCompatActivity {
private Button button2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_2);
getSupportActionBar().setTitle("Activity 2");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openActivity3();
}
});
}
public void openActivity3() {
Intent intent = new Intent(this, Activity3.class);
startActivity(intent);
}
}
package com.example.application.upbuttonexample;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class Activity3 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_3);
getSupportActionBar().setTitle("Activity 3");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
}
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.application.upbuttonexample.Activity2">
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="open activity 3" />
</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.application.upbuttonexample.Activity3">
</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.application.upbuttonexample.MainActivity">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="open activity 2" />
</RelativeLayout>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.application.upbuttonexample">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Activity2"
android:parentActivityName=".MainActivity"></activity>
<activity
android:name=".Activity3"
android:parentActivityName=".Activity2"></activity>
</application>
</manifest>
package com.example.application.upbuttonexample;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openActivity2();
}
});
}
public void openActivity2() {
Intent intent = new Intent(this, Activity2.class);
startActivity(intent);
}
}
@Microhands
Copy link

getSupportActionBar().setTitle("Activity 2");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

Either of these lines crashes Android Studio. I've tried other video to create an ActionBar. Can we see how you create the Action Bar?

It appears to me that the ActionBar or a Lib is missing and this is why the app crashes. Please come back to help.

@Microhands
Copy link

Will using
import androidx.appcompat.app.AppCompatActivity;
rather than
import android.support.v7.app.AppCompatActivity

cause my app to crash when using getSupportActionBar().setTitle("Activity 2"); or
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

I've been unable to get this code to stop crashing?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment