Difference between revisions of "Android Studio: Cara Membuat Android Apps"
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) |
||
Line 9: | Line 9: | ||
MainActivity.java | MainActivity.java | ||
− | + | package com.newthinktank.helloagain.app; | |
+ | |||
+ | import android.os.Bundle; | ||
+ | import android.support.v7.app.ActionBarActivity; | ||
+ | import android.view.Menu; | ||
+ | import android.view.MenuItem; | ||
+ | import android.view.View; | ||
+ | import android.widget.Button; | ||
+ | import android.widget.TextView; | ||
+ | |||
+ | public class MainActivity extends ActionBarActivity { | ||
+ | |||
+ | // onCreate is executed when the activity is created | ||
+ | @Override | ||
+ | protected void onCreate(Bundle savedInstanceState) { | ||
+ | super.onCreate(savedInstanceState); | ||
+ | |||
+ | // Sets the file activity_main.xml as the user interface | ||
+ | setContentView(R.layout.activity_main); | ||
− | + | // To be able to edit the TextView with our code we have to create it and | |
− | + | // bind it to a TextView object. I need to use final because it will be | |
− | + | // used in the inner class below | |
− | + | final TextView firstTextView = (TextView) findViewById(R.id.textView); | |
− | + | ||
− | + | // I set up the Button just like I did the TextView | |
− | + | Button firstButton = (Button) findViewById(R.id.firstButton); | |
+ | |||
+ | // This is how you make the Button change the text in the TextView when it is clicked | ||
+ | firstButton.setOnClickListener(new View.OnClickListener() { | ||
+ | @Override | ||
+ | public void onClick(View view) { | ||
+ | |||
+ | firstTextView.setText("You Clicked"); | ||
+ | |||
+ | } | ||
+ | }); | ||
+ | } | ||
− | |||
− | + | @Override | |
− | + | public boolean onCreateOptionsMenu(Menu menu) { | |
− | + | // Inflate the menu; this adds items to the action bar if it is present. | |
− | + | getMenuInflater().inflate(R.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(); | |
− | + | if (id == R.id.action_settings) { | |
− | + | return true; | |
− | + | } | |
− | + | return super.onOptionsItemSelected(item); | |
− | + | } | |
− | + | } | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
activity_main.xml | 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:paddingLeft="@dimen/activity_horizontal_margin" | |
− | + | android:paddingRight="@dimen/activity_horizontal_margin" | |
− | + | android:paddingTop="@dimen/activity_vertical_margin" | |
− | + | android:paddingBottom="@dimen/activity_vertical_margin" | |
− | + | tools:context="com.newthinktank.helloagain.app.MainActivity"> | |
− | + | ||
− | + | <TextView | |
− | + | android:text="@string/hello_world" | |
− | + | android:textSize="40sp" | |
− | + | android:layout_width="wrap_content" | |
− | + | android:layout_height="wrap_content" | |
− | + | android:layout_centerHorizontal="true" | |
− | + | android:id="@+id/textView" /> | |
− | + | ||
− | + | <Button | |
− | + | android:layout_width="wrap_content" | |
− | + | android:layout_height="wrap_content" | |
− | + | android:text="@string/button_1_text" | |
− | + | android:id="@+id/firstButton" | |
− | + | android:layout_below="@+id/textView" | |
− | + | android:layout_centerHorizontal="true" | |
− | + | android:layout_marginTop="52dp" /> | |
− | + | ||
− | + | </RelativeLayout> | |
dimens.xml | dimens.xml |
Revision as of 18:25, 20 April 2015
In this video I start my new Android tutorial. The last Android tutorial I made is still very popular, but I’m going to try and improve on it here.
If you are a beginner to Android and don’t know Java you may prefer my Android tutorial for beginners. I’ll be using Android Studio in this tutorial and I show how to install Android Studio here. All of the code follows the tutorial below.
If you like videos like this, it helps my search ranking if you share it on Google Plus with a click here
Code from the Video
MainActivity.java
package com.newthinktank.helloagain.app; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.TextView; public class MainActivity extends ActionBarActivity { // onCreate is executed when the activity is created @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Sets the file activity_main.xml as the user interface setContentView(R.layout.activity_main);
// To be able to edit the TextView with our code we have to create it and // bind it to a TextView object. I need to use final because it will be // used in the inner class below final TextView firstTextView = (TextView) findViewById(R.id.textView); // I set up the Button just like I did the TextView Button firstButton = (Button) findViewById(R.id.firstButton); // This is how you make the Button change the text in the TextView when it is clicked firstButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { firstTextView.setText("You Clicked"); } }); }
@Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.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(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context="com.newthinktank.helloagain.app.MainActivity"> <TextView android:text="@string/hello_world" android:textSize="40sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:id="@+id/textView" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button_1_text" android:id="@+id/firstButton" android:layout_below="@+id/textView" android:layout_centerHorizontal="true" android:layout_marginTop="52dp" /> </RelativeLayout>
dimens.xml
<resources> <dimen name="activity_horizontal_margin">16dp</dimen> <dimen name="activity_vertical_margin">16dp</dimen> </resources>
strings.xml
<?xml version="1.0" encoding="utf-8"?> <resources>
<string name="app_name">HelloAgain</string> <string name="hello_world">Hello Again</string> <string name="action_settings">Settings</string> <string name="button_1_text">You Clicked</string>
</resources>
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.newthinktank.helloagain.app" >
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.newthinktank.helloagain.app.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application>
</manifest>
28 Responses to “How to Make Android Apps”
Roni June 16, 2014 at 5:44 pm
when will your Android challenge start?? I can’t wait to win Samsung Galaxy Note 3 :D Reply Derek Banas June 25, 2014 at 12:27 pm
It just started yesterday. All the information is on my site Reply alvin January 28, 2015 at 3:11 am
can you put a next and previous button for pagination on your site blog post so that we can easily go to next topic using this site? please. thank you Reply Derek Banas February 3, 2015 at 11:01 am
I’ll see what I can do. I only avoided that because some people don’t like having to click to different pages. Reply unknown June 21, 2014 at 1:10 am
great job on doing this tutorials keep it up :D Reply Derek Banas June 25, 2014 at 12:21 pm
Thank you :) Reply stephen July 13, 2014 at 12:08 am
can you help me with this error please and thanks Waiting for device. “/Applications/Android Studio.app/sdk/tools/emulator” -avd MonoForAndroid_API_8 -netspeed full -netdelay none
emulator: ERROR: This AVD’s configuration is missing a kernel file!! Reply Derek Banas July 17, 2014 at 8:29 am
In the SDK manager download the ARM EABI v7a System Image Reply israel July 18, 2014 at 3:28 pm
Best tutorials given by the best teacher Dereck Banas Reply Derek Banas July 21, 2014 at 6:05 pm
Thank you :) It is very kind of you to say that. Reply Altiano July 23, 2014 at 8:06 am
i’m going to learn about android apps development, which one should i choose, the new android tutorial or the old one? Reply Derek Banas July 25, 2014 at 6:38 pm
Probably the new one. I’m better at teaching Android now Reply Ext July 26, 2014 at 10:43 am
This is my first time programming anything for android, but I have developed a lot for Java and different languages earlier. I followed your tutorial but I can not get it too work. First it does not like ActionBarActivity so I googled and added dependencies { compile ‘com.android.support:appcompat-v7:+’ } too build.gradle but now it is complaing about Manifest merger failed : uses-sdk:minSdkVersion 15 cannot be smaller than version L declared in library com.android.support:appcompat-v7:21.0.0-rc1
What am I doing wrong, is it supposed to be this hard? :D I have never actually experienced anything thid hard to do a simple hello world program :D Reply Derek Banas July 28, 2014 at 8:49 am
Switch your target API to 19 and make sure you have all the proper files downloaded for 19 in the SDK manager and the errors will go away Reply David August 1, 2014 at 12:32 pm
Derek, are you going to make a video on how to create a menu bar, for example, and add an icon to it? Is this too graphics intensice i.e. GL stuff or is it easier than it looks? Also would you be able to add an action behind that button? Reply Derek Banas August 2, 2014 at 7:29 am
I’ll cover custom layouts, menu bars, etc. later. I already cover the action bar and options menu in part 4. Reply Kevin Kesler October 2, 2014 at 5:51 pm
I think i need to learn the path to programming effectively for android. the app inventor has worked awesome and i have overcome all of the obstacles i set out to. what steps would you recommend? i have experience with computers mostly by necessity. i did basic in high school. a but of c in college but20 years ago. where should i start now and what should i not bypass? is java what i need to learn? a little insight could keep me from wasting vast amounts of time learning things that later will be irrelavant. thanks for your thought :) Reply Derek Banas October 3, 2014 at 9:31 am
Yes parts 1 – 18, minus parts 8 and 10 is all you need from my Java tutorial. Then move on to my new Android tutorial and you’ll be ready to go. Reply Will October 12, 2014 at 4:08 am
Thanks for your Tutorial. It`s great. cheers Reply Derek Banas October 12, 2014 at 9:38 am
You’re very welcome :) Reply sypi October 15, 2014 at 12:55 am
Thanks for the tutorials! Love the android ones! Reply Derek Banas October 16, 2014 at 5:49 pm
Thank you :) More are coming in the next few days Reply dre November 12, 2014 at 12:49 pm
way kool video. only downside is that it takes for ever to update the sdk manager. Reply Derek Banas November 13, 2014 at 12:16 pm
Thank you :) That is odd that the SDK manager is so slow. I haven’t had that issue before. Reply Derick November 12, 2014 at 9:15 pm
Hi there, I ran the code u given and i got an error.
error:cannot find symbol variable main
execution failed for task ‘:app.compileDebugJava compilation failed; see the computer compiler error output for details
/////////////////////////////////////// @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } /////////////////////////////////////////
the ‘main’ in error is from the code above.
may i know how do i resolve this? thank you. Reply Derek Banas November 13, 2014 at 12:13 pm
Remove all of these from your file import android.R and clean the project Reply Ashwin February 1, 2015 at 11:13 am
Really a huge fan of yours…! :) Reply Derek Banas February 3, 2015 at 6:50 am
Thank you :) I do my best. Reply
Leave a Reply
Your email address will not be published.
Name
Website
Comment
You may use these HTML tags and attributes: <a href="" title="" rel="">
<acronym title="">
- See more at: http://www.newthinktank.com/2014/06/make-android-apps/#sthash.Yhlj67TE.dpuf
Referensi
* http://www.newthinktank.com/2014/06/make-android-apps/