![]() |
|
|
|
#1 |
|
Medlem
Registrerad: 2012-02-05
Inlägg: 9
Lösningar: 0 |
Android hjälp?
Hej jag håller på att utveckla en app för android och har lite problem, jag tror att felet ligger i skrivandet och läsningen av filerna eller när jag skapar spinners?
Här är koden för klassen där skrivningen görs: Kod:
public class Aktivitet extends Activity{
Button skapa;
EditText etNamn;
String sNamn;
RadioGroup rgKategorier;
RadioButton rbGolf;
RadioButton rbFys;
RadioButton rbMentalt;
RadioButton rbOvrigt;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.aktivitet);
etNamn = (EditText) findViewById(R.id.etNamn);
skapa = (Button) findViewById(R.id.bSkapa);
rgKategorier = (RadioGroup) findViewById(R.id.rgKategorier);
rbGolf = (RadioButton) findViewById(R.id.rbGolf);
rbFys = (RadioButton) findViewById(R.id.rbFys);
rbMentalt = (RadioButton) findViewById(R.id.rbMentalt);
rbOvrigt = (RadioButton) findViewById(R.id.rbOvrigt);
skapa.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
int selectedId = rgKategorier.getCheckedRadioButtonId();
String output = " ";
String output2 = " ";
sNamn = etNamn.getText().toString();
String FILENAME = "aktivitetInfo.txt";
String FILENAME2 = "kategoriInfo.txt";
try {
OutputStreamWriter osw = new OutputStreamWriter(openFileOutput("FILENAME", 0));
OutputStreamWriter osw2 = new OutputStreamWriter(openFileOutput("FILENAME2", 0));
if(selectedId == rbGolf.getId()){
output = "Golf\n";
osw2.write(output);}
else if(selectedId == rbFys.getId()){
output = "Fys\n";
osw2.write(output);}
else if(selectedId == rbMentalt.getId()){
output = "Mentalt\n";
osw2.write(output);}
else if(selectedId == rbOvrigt.getId()){
output = "Ovrigt\n";
osw2.write(output);}
output2 = sNamn + "\n";
osw.write(output2);
osw.close();
osw2.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent openMainProgram = new Intent("martin.app.development.DSFACTIVITY");
startActivity(openMainProgram);
}
});
}
}
Kod:
public class Post extends Activity{
Spinner spGolf, spFys, spMentalt, spOvrigt;//Spinners for categories
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.post);//SEt post to xml layout
String inputFile = "aktivitetInfo.txt";//Set upp the input files
String inputFile2 = "kategoriInfo.txt";
String input = "";//The input taken from files
String input2 = "";
//Setup spinners
spGolf = (Spinner) findViewById(R.id.spGolf);
spFys = (Spinner) findViewById(R.id.spFys);
spMentalt = (Spinner) findViewById(R.id.spMentalt);
spOvrigt= (Spinner) findViewById(R.id.spOvrigt);
String[] kategori = {};
String[] aktivitet = {};
try {
InputStream is = openFileInput(inputFile);
InputStream is2 = openFileInput(inputFile2);
InputStreamReader inputreader = new InputStreamReader(is);
InputStreamReader inputreader2 = new InputStreamReader(is2);
BufferedReader buffreader = new BufferedReader(inputreader);
BufferedReader buffreader2 = new BufferedReader(inputreader2);
input = buffreader.toString();
input2 = buffreader2.toString();
int length = input.length();
int length2 = input2.length();
for(int i = 0; i < length; i++){
String word = "";
int j = 0;
if(input.substring(i, i+2) == "\n"){
aktivitet[j] = word;
j++;
}
else
word += input.substring(i, i+1);
}
for(int i = 0; i < length2; i++){
String word = "";
int j = 0;
if(input2.substring(i, i+2) == "\n"){
kategori[j] = word;
j++;
}
else
word += input.substring(i, i+1);
}
is.close();
is2.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
List<String> golfList = new ArrayList<String>();
List<String> fysList = new ArrayList<String>();
List<String> mentaltList = new ArrayList<String>();
List<String> ovrigtList = new ArrayList<String>();
for(int i = 0; i < kategori.length; i++){
if(kategori[i] == "Golf"){
golfList.add(aktivitet[i]);
}
else if(kategori[i] == "Fys"){
fysList.add(aktivitet[i]);
}
else if(kategori[i] == "Mentalt"){
mentaltList.add(aktivitet[i]);
}
else{
ovrigtList.add(aktivitet[i]);
}
}
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, golfList);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spGolf.setAdapter(dataAdapter);
ArrayAdapter<String> dataAdapter2 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, fysList);
dataAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spFys.setAdapter(dataAdapter);
ArrayAdapter<String> dataAdapter3 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, mentaltList);
dataAdapter3.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spMentalt.setAdapter(dataAdapter);
ArrayAdapter<String> dataAdapter4 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, ovrigtList);
dataAdapter4.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spOvrigt.setAdapter(dataAdapter);
}
}
|
|
|
|
|
|
#2 |
|
Medlem
Registrerad: 2003-06-25
Inlägg: 1 916
Lösningar: 71 |
Du bör nog beskriva vad du får för fel. Blir det fel vid kompilering eller när du kör koden?
Får du något felmeddelande? |
|
|
|
|
|
#3 |
|
Medlem
Registrerad: 2002-02-04
Ort: Jönköping
Inlägg: 279
Lösningar: 2 |
Som redan nämnts behövs felmeddelandet, hittar dock en hel del underligheter.
Kod:
String FILENAME = "aktivitetInfo.txt";
String FILENAME2 = "kategoriInfo.txt";
try {
OutputStreamWriter osw = new OutputStreamWriter(openFileOutput("FILENAME", 0));
OutputStreamWriter osw2 = new OutputStreamWriter(openFileOutput("FILENAME2", 0));
Kod:
String output = " "; String output2 = " "; Kod:
...
if (input2.substring(i, i + 2) == "\n") {
...
if (kategori[i] == "Golf") {
...
Kod:
String[] kategori = {};
String[] aktivitet = {};
...
aktivitet[j] = word;
...
kategori[j] = word;
...
|
|
|
|
|
|
#4 |
|
Medlem
Registrerad: 2012-02-05
Inlägg: 9
Lösningar: 0 |
Tack för all hjälp quotens runt FILENAME är nu fixat och jag har nu gjort om lite i post.java koden också med när jag startar post delen så får jag ett fel meddelande från android... Jag vet inte riktigt vad jag ska göra... Tack för all hjälp så här långt det uppskattas verkligen:D!!
Kod:
public class Post extends Activity{
Spinner spGolf, spFys, spMentalt, spOvrigt;//Spinners for categories
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.post);//SEt post to xml layout
String inputFile = "aktivitetInfo.txt";//Set upp the input files
String inputFile2 = "kategoriInfo.txt";
String input;//The input taken from files
String input2;
//Setup spinners
spGolf = (Spinner) findViewById(R.id.spGolf);
spFys = (Spinner) findViewById(R.id.spFys);
spMentalt = (Spinner) findViewById(R.id.spMentalt);
spOvrigt= (Spinner) findViewById(R.id.spOvrigt);
//Holding the difrent categories and activits
List kategori = new LinkedList(); // Doubly-linked list
kategori = new ArrayList();
List aktiviteter = new LinkedList(); // Doubly-linked list
aktiviteter = new ArrayList();
try {
InputStream is = openFileInput(inputFile);
InputStream is2 = openFileInput(inputFile2);
InputStreamReader inputreader = new InputStreamReader(is);
InputStreamReader inputreader2 = new InputStreamReader(is2);
BufferedReader buffreader = new BufferedReader(inputreader);
BufferedReader buffreader2 = new BufferedReader(inputreader2);
input = buffreader.toString();
input2 = buffreader2.toString();
int length = input.length();
int length2 = input2.length();
for(int i = 0; i < length; i++){
String word = "";
if(input.substring(i, i+2).equals("\n")){
aktiviteter.add(word);
word = "";
}
else
word += input.substring(i, i+1);
}
for(int i = 0; i < length2; i++){
String word = "";
if(input2.substring(i, i+2).equals("\n")){
kategori.add(word);
word = "";
}
else
word += input.substring(i, i+1);
}
is.close();
is2.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
List<String> golfList = new ArrayList<String>();
List<String> fysList = new ArrayList<String>();
List<String> mentaltList = new ArrayList<String>();
List<String> ovrigtList = new ArrayList<String>();
for(int i = 0; i < kategori.size(); i++){
if(kategori.get(i) == "Golf"){
golfList.add((String) aktiviteter.get(i));
}
else if(kategori.get(i) == "Fys"){
fysList.add((String) aktiviteter.get(i));
}
else if(kategori.get(i) == "Mentalt"){
mentaltList.add((String) aktiviteter.get(i));
}
else{
ovrigtList.add((String) aktiviteter.get(i));
}
}
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, golfList);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spGolf.setAdapter(dataAdapter);
ArrayAdapter<String> dataAdapter2 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, fysList);
dataAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spFys.setAdapter(dataAdapter2);
ArrayAdapter<String> dataAdapter3 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, mentaltList);
dataAdapter3.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spMentalt.setAdapter(dataAdapter3);
ArrayAdapter<String> dataAdapter4 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, ovrigtList);
dataAdapter4.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spOvrigt.setAdapter(dataAdapter4);
}
}
|
|
|
|
|
|
#5 |
|
Medlem
Registrerad: 2002-02-04
Ort: Jönköping
Inlägg: 279
Lösningar: 2 |
Vad blir det för fel?
Kod:
List kategori = new LinkedList(); // Doubly-linked list kategori = new ArrayList(); List aktiviteter = new LinkedList(); // Doubly-linked list aktiviteter = new ArrayList(); Kod:
for(int i = 0; i < length; i++){
String word = "";
if(input.substring(i, i+2).equals("\n")){
aktiviteter.add(word);
word = "";
}
else
word += input.substring(i, i+1);
}
Kod:
List kategori = new LinkedList(); Kod:
List<String> kategori = new LinkedList<String>(); Kod:
fysList.add((String) aktiviteter.get(i)); Kod:
for (String kat : kategori) {
if(kat.equals("Golf")){
golfList.add(kat);
}
...
}
|
|
|
|
![]() |
| Trådverktyg | |
| Visningsalternativ | |
|
|