I am learning to write a interface in java in android studios but for some reason my app always says "Unfortunately myApp has stopped working" or something of the like
this is what i have:
package com.name.javainterface;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.RelativeLayout;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
RelativeLayout myLayout = new RelativeLayout(this);
Button redButton = new Button(this);
myLayout.addView(redButton);
setContentView(R.layout.myLayout);
setContentView(R.layout.activity_main);
/*Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
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();
}
});*/
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.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();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
How come my layout is causing my app to stop functioning ? when i plug my phone in and run the app it doesn't play and says "error: cannot find symbol variable myLayout" which doesn't make any sense because i made the layout before calling it so why doesn't it know what myLayout is?
Don't add default views like button, textview, edittext, etc. programmatically until it is required. You have declared setContentView() multiple times also. Plus, the error: "cannot find symbol variable myLayout" is generated because you haven't created a layout file named "myLayout.xml" in layout directory. Here is the fixed code:
MainActivity.java :
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button redButton=(Button) findViewById(R.id.button_red);
}
}
activity_main.xml :
<?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">
<Button
android:id="@+id/button_red"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="I am red button"/>
</RelativeLayout>
Also, looking at your programming style, it seems you are new to android. So please watch these set of tutorials: https://www.youtube.com/watch?v=hzrGAZnMOMQ&list=PL1q3ROAofjeOUwh7lPBnGbg__DUodwLN7