My First Android App Won't Work! :/

Started by
1 comment, last by NUCLEAR RABBIT 11 years ago

Hello, So I coded a portion of my first app, its not 100% done, but I wanted to test what I had learned thus far. Im coding in eclipse, have no errors and i load up my emulator. I cant find the app icon on the phone, but if I click on the emulator and go to applications/sd& applications/manage applications/downloaded it shows up there and when I click it, I dont have an option to open it, just uninstall. Can anyone please help me understand why this is occuring?! been trying to get this going for 2 days :|

MainActivivity.java


package com.bwall.thenumbergame;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.view.View;
import com.bwall.thenumbergame.R;

public class MainActivity extends Activity {
	
	int number = 0;
	
	TextView textField = (TextView) findViewById(R.id.textField);
	TextView result = (TextView) findViewById(R.id.resultView);
	EditText gameObjective = (EditText) findViewById(R.string.gameObjective);
	Button button = (Button) findViewById(R.string.submitButton);
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		button.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				number = textField.getInputType();
				result.setText("Your Number is " + number + ", bitch!");
			}
		});
		
		
	}
}

strings.xml


<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">The Number Game</string>
    <string name="title_activity_main">The Number Game</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>
    <string name="submitButton">Sumbit Guess Now!</string>
    <string name="gameObjective">Guess My Number, Bitch! (1-10)</string>

</resources>

activity_main.xml


<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"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/gameObjective"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="30dp"
        android:text="@string/gameObjective"
        android:textSize="30sp" />

    <EditText
        android:id="@+id/textField"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/gameObjective"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="15dp"
        android:ems="10"
        android:inputType="number" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/submitButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textField"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="19dp"
        android:text="@string/submitButton" />

    <TextView
        android:id="@+id/resultView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/submitButton"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="58dp" />

</RelativeLayout>

Advertisement

Hi, let's see if I can help you out :-)

1.)

  1. EditText gameObjective = (EditText) findViewById(R.string.gameObjective);
    	Button button = (Button) findViewById(R.string.submitButton);

findViewById is looking for views (ui elements defined in your layout XML files) and should have a reference to R.id, not R.string.

I think you might have gotten confused by the fact that you have named your string and id elements the same (gameObjective).

2). Change

TextView textField = (TextView) findViewById(R.id.textField);

to

EditText textField = (EditText) findViewById(R.id.textField);

3). Then in onClick, to get number do:

String yourNumber = textField.getText().toString();

4).

button.setOnClickListener(new View.OnClickListener()

I would change it to new OnClickListener().

Check the console in Eclipse when launching the app. If it doesn't install for some reason you will see why here.

If it fires up like it's supposed to, check DDMS/Logcat for Exceptions. If you still have problems you can post it back to me here or export the entire app from Eclipse to a zipped file and I can tell you what the problem is :-)

Good luck!

Hi, let's see if I can help you out :-)

1.)

  1. 
    EditText gameObjective = (EditText) findViewById(R.string.gameObjective);
    	Button button = (Button) findViewById(R.string.submitButton);

findViewById is looking for views (ui elements defined in your layout XML files) and should have a reference to R.id, not R.string.

I think you might have gotten confused by the fact that you have named your string and id elements the same (gameObjective).

2). Change


TextView textField = (TextView) findViewById(R.id.textField);

to


EditText textField = (EditText) findViewById(R.id.textField);

3). Then in onClick, to get number do:


String yourNumber = textField.getText().toString();

4).


button.setOnClickListener(new View.OnClickListener()

I would change it to new OnClickListener().

Check the console in Eclipse when launching the app. If it doesn't install for some reason you will see why here.

If it fires up like it's supposed to, check DDMS/Logcat for Exceptions. If you still have problems you can post it back to me here or export the entire app from Eclipse to a zipped file and I can tell you what the problem is :-)

Good luck!

Thanks a lot! :D

This topic is closed to new replies.

Advertisement