====== Android Coding Questions ======
==== Where's an example of layout used by ListActivity? ====
==== How do I start another activity? ====
startActivity(new Intent(this, MyAnotherActivity.class));
+ Don't forget to add lines in AndroidManifest.xml
==== How to add EditText fields to the table's cells? ====
==== How to get Eclipse and Android work in Ubuntu? ====
For eclipse you need to use sun java packages (gcc gjc java is installed by default but it does not seem to work well)
* https://help.ubuntu.com/community/Java
* get JDK (SDK) package as well
Ubuntu 9.10 repositories have Eclipse 3.5.1. It does not work with Android SDK. Get newer Eclipse. Version 3.5.2 seem to work.
* http://www.eclipse.org => Download => Eclipse for Java (or Java EE (not nessessary)).
* Extract it to your self installed software place (eg. /opt) and link eclipse start program to some place in your PATH.
Follow general android install [[setup|instructions]].
==== How to save XML file after editing (f.e. adding new child) - what class to use? ====
To use XmlSerializer is one option to save XML into readable form (string or file).
See the following link [[http://www.ibm.com/developerworks/xml/library/x-android/|Working with XML on Android]] if that is helpful.
private String writeXml(List messages){
XmlSerializer serializer = Xml.newSerializer();
StringWriter writer = new StringWriter();
try {
serializer.setOutput(writer);
serializer.startDocument("UTF-8", true);
serializer.startTag("", "messages");
serializer.attribute("", "number", String.valueOf(messages.size()));
for (Message msg: messages){
serializer.startTag("", "message");
serializer.attribute("", "date", msg.getDate());
serializer.startTag("", "title");
serializer.text(msg.getTitle());
serializer.endTag("", "title");
serializer.startTag("", "url");
serializer.text(msg.getLink().toExternalForm());
serializer.endTag("", "url");
serializer.startTag("", "body");
serializer.text(msg.getDescription());
serializer.endTag("", "body");
serializer.endTag("", "message");
}
serializer.endTag("", "messages");
serializer.endDocument();
return writer.toString();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
==== Does anybody know how to launch another application, e.g. "YouTube" from your own program? ====
I know how to launch web-browser, if smb needs I can explain. Also I've installed some applications to the emulator, except YouTube :(. By the way we know how to send data from one activity to another and few other features, that could be useful just ask, may be we've faced with it! Vadim.
A: A generic answer to this is that you need to know the intent filter of the started activity/application. When you know the intent filter you can always create intent that is going to match to the filter. Then, it is simply just a call on Context.startActivity(intent). All the "standard" platform applications and their AndroidManifest.xml files are in the public repository.
==== How to add question ? ====
Log into wiki, find this question (index) page, and add a question beginning the this page, after first headline.
==== My Problem ? ====
How to get functionality X to work ?
==== How to answer a question ? ====
Just write a solution text into section, after question.
If solution is bigger that one paragraph size (having eg. couple screenshots), it is good idea document solution into separate page.
Solution in [[separate page]]