Android Development - Snippets: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
 
(27 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
== Android Cheat Sheet ==
 +
[[Android - Cheat Sheet]]
 +
 
== Activities ==
 
== Activities ==
 
=== Android - Neue Activity anlegen und starten ===
 
=== Android - Neue Activity anlegen und starten ===
Zeile 5: Zeile 8:
 
== Layouts ==
 
== Layouts ==
 
Lock Portrait or Landscape
 
Lock Portrait or Landscape
 +
 
fullscreen - requestwindowfeature
 
fullscreen - requestwindowfeature
 +
 +
=== Handle Orientation ===
 +
[[Android - Handle Orientation]]
  
 
== Views ==
 
== Views ==
 
=== Vertical Seek Bar ===
 
=== Vertical Seek Bar ===
http://stackoverflow.com/questions/4892179/how-can-i-get-a-working-vertical-seekbar-in-android (2013-02)
+
[[Android - Vertical Seek Bar]]
 +
 
 +
== Events ==
 +
[[Android - OnClickListener]]
 +
 
 +
== Graphic and Animation ==
 +
Bitmap - ressource und input stream
 +
 
  
Siehe auch die Kommentare wg. Verbesserungen und Problembehebungen
+
Sprites
  
<pre>
+
== Sound ==
package android.widget;
+
=== Unterstützte Formate ===
 +
* http://developer.android.com/guide/appendix/media-formats.html
 +
=== Links ===
 +
* http://stackoverflow.com/questions/4855874/are-there-any-built-in-default-sounds-that-can-be-utilized-in-an-app
 +
* http://alucard1990.hubpages.com/hub/How-to-Make-a-Simple-Media-Player-for-Android
 +
* http://stackoverflow.com/questions/3747139/how-can-i-show-a-mediacontroller-while-playing-audio-in-android/5265629#5265629
  
import android.content.Context;
+
=== Möglichkeiten zur Sound-Ausgabe ===
import android.graphics.Canvas;
 
import android.util.AttributeSet;
 
import android.view.MotionEvent;
 
  
public class VerticalSeekBar extends SeekBar {
+
====SoundPool====
  
    public VerticalSeekBar(Context context) {
+
====MediaPlayer====
        super(context);
+
[[Android - Media Player]]
    }
 
  
    public VerticalSeekBar(Context context, AttributeSet attrs, int defStyle) {
+
http://developer.android.com/reference/android/media/MediaPlayer.html
        super(context, attrs, defStyle);
 
    }
 
  
    public VerticalSeekBar(Context context, AttributeSet attrs) {
+
Generate Sound (Midi-Files + PCM Generation mit AudioTrack)
        super(context, attrs);
+
[[Android - rttl Sound File]]
    }
+
* http://www.speakingcode.com/2012/01/01/playing-with-android-audiotrack-to-generate-sounds/
  
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
+
System Sounds
        super.onSizeChanged(h, w, oldh, oldw);
 
    }
 
  
    @Override
+
=== Fortgeschrittene Techniken ===
    protected synchronized void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
+
* http://www.martinhoeller.net/2012/01/13/developing-a-musical-instrument-app-for-android/
        super.onMeasure(heightMeasureSpec, widthMeasureSpec);
 
        setMeasuredDimension(getMeasuredHeight(), getMeasuredWidth());
 
    }
 
  
    protected void onDraw(Canvas c) {
+
* http://docs.gstreamer.com/display/GstSDK/Android+tutorials
        c.rotate(-90);
 
        c.translate(-getHeight(), 0);
 
  
        super.onDraw(c);
+
* http://www.brokenteapotstudios.com/android-game-development-blog/2011/10/playing-a-wav-pcm-sample-with-audiotrack.html
    }
 
  
    @Override
+
== Threads ==
    public boolean onTouchEvent(MotionEvent event) {
+
* [[Java - Threads]]
        if (!isEnabled()) {
+
* [[Android - Threads]]
            return false;
+
* [[Java - Timer und TimerTask]]
        }
+
* [[Android - Thread Priority]]
  
        switch (event.getAction()) {
+
== Files, Dateimanagment ==
            case MotionEvent.ACTION_DOWN:
+
[[Android - Dateimanagement]]
            case MotionEvent.ACTION_MOVE:
+
=== Textdatei erzeugen, speichern, lesen ===
            case MotionEvent.ACTION_UP:
+
=== Bild erzeugen und speichern ===
                setProgress(getMax() - (int) (getMax() * event.getY() / getHeight()));
+
http://stackoverflow.com/questions/10278919/android-writing-reading-picture-to-internal-storage?rq=1
                onSizeChanged(getWidth(), getHeight(), 0, 0);
 
                break;
 
  
            case MotionEvent.ACTION_CANCEL:
+
[[Android - Bild erzeugen und speichern]]
                break;
 
        }
 
        return true;
 
    }
 
}
 
</pre>
 
  
Implementation
+
=== Zugriff auf Ressourcen ===
To implement it, create a new class in your project, choosing the right package: android.widget
+
* http://stackoverflow.com/questions/8340445/how-can-i-specify-the-resource-to-get-from-r-res-drawable-dynamically
 +
Beispiel Speicherkarte:
 +
File.DirRootExternal & "/Music", "titelx.mp3"
  
xml Layout
 
<pre>
 
  
<android.widget.VerticalSeekBar
+
==== Ressourcen Pfad herausfinden ====
  android:id="@+id/seekBar1"
+
Ist das richtig ???
  android:layout_width="wrap_content"
+
Eigentlich muß die Ressource ID in den Filenamen umgewandelt werden.
  android:layout_height="200dp"
+
 
  />
+
Using Resource Name
</pre>
+
 
 +
Syntax:
 +
 
 +
android.resource://[package]/[res type]/[res name]
 +
 
 +
Example : If icon.png image file is available in res/drawable folder you can get path like :
 +
 
 +
String PATH="android.resource://com.my.package/drawable/icon";
 +
 
 +
Using Resource Id
 +
 
 +
Syntax :
 +
android.resource://[package]/[resource_id]
 +
 
 +
Example : If icon.png image file is available in res/drawable folder you can get path:
 +
 
 +
String PATH="android.resource://com.my.package/" + R.drawable.icon;
 +
 
 +
This were the examples to get the URI of any image file stored in drawable folder.
 +
 
 +
Similarly you can get URIs of res/raw folder also.
  
== Events ==
 
[[Android - OnClickListener]]
 
  
== Graphic and Animation ==
+
???
Bitmap - ressource und input stream
 
  
 +
== Gestures - Gesten ==
 +
[[Android Development - Gesten]]
  
Sprites
+
== GPS, Geolocation und Maps ==
 +
[[Android Location API]]

Aktuelle Version vom 10. Oktober 2013, 14:50 Uhr

Android Cheat Sheet[Bearbeiten]

Android - Cheat Sheet

Activities[Bearbeiten]

Android - Neue Activity anlegen und starten[Bearbeiten]

Android - Neue Activity

Layouts[Bearbeiten]

Lock Portrait or Landscape

fullscreen - requestwindowfeature

Handle Orientation[Bearbeiten]

Android - Handle Orientation

Views[Bearbeiten]

Vertical Seek Bar[Bearbeiten]

Android - Vertical Seek Bar

Events[Bearbeiten]

Android - OnClickListener

Graphic and Animation[Bearbeiten]

Bitmap - ressource und input stream


Sprites

Sound[Bearbeiten]

Unterstützte Formate[Bearbeiten]

Links[Bearbeiten]

Möglichkeiten zur Sound-Ausgabe[Bearbeiten]

SoundPool[Bearbeiten]

MediaPlayer[Bearbeiten]

Android - Media Player

http://developer.android.com/reference/android/media/MediaPlayer.html

Generate Sound (Midi-Files + PCM Generation mit AudioTrack) Android - rttl Sound File

System Sounds

Fortgeschrittene Techniken[Bearbeiten]

Threads[Bearbeiten]

Files, Dateimanagment[Bearbeiten]

Android - Dateimanagement

Textdatei erzeugen, speichern, lesen[Bearbeiten]

Bild erzeugen und speichern[Bearbeiten]

http://stackoverflow.com/questions/10278919/android-writing-reading-picture-to-internal-storage?rq=1

Android - Bild erzeugen und speichern

Zugriff auf Ressourcen[Bearbeiten]

Beispiel Speicherkarte:

File.DirRootExternal & "/Music", "titelx.mp3"


Ressourcen Pfad herausfinden[Bearbeiten]

Ist das richtig ??? Eigentlich muß die Ressource ID in den Filenamen umgewandelt werden.

Using Resource Name

Syntax:

android.resource://[package]/[res type]/[res name]

Example : If icon.png image file is available in res/drawable folder you can get path like :

String PATH="android.resource://com.my.package/drawable/icon";

Using Resource Id

Syntax :

android.resource://[package]/[resource_id]

Example : If icon.png image file is available in res/drawable folder you can get path:

String PATH="android.resource://com.my.package/" + R.drawable.icon;

This were the examples to get the URI of any image file stored in drawable folder.

Similarly you can get URIs of res/raw folder also.


???

Gestures - Gesten[Bearbeiten]

Android Development - Gesten

GPS, Geolocation und Maps[Bearbeiten]

Android Location API