Child pages
  • SharedPreferences i/o probléma
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Sziasztok,

van egy preferences.xml-em, a releváns töredék:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<PreferenceCategory android:title="Időbeállítások" >
<ListPreference
android:defaultValue="15"
android:entries="@array/listMinutesOffset"
android:entryValues="@array/listMinutesOffsetValues"
android:key="iMinutesOffset"
android:title="Időbeosztás percekben"
android:summary="a legkisebb választhatő időköz" />

@array/listMinutesOffset ::= {10perc,15 perc,...}, a  @array/listMinutesOffsetValues ::= {10,15,...}

Egy teljesen szimpla 3 soros Activityvel keztelem a preferences képernyőt:

public class Prefs {
private SharedPreferences prefs = null;

public int iMinutesOffset; // offset start of new appointment

public Prefs( Context ctx )  {

prefs = PreferenceManager.getDefaultSharedPreferences( ctx );
Load();

}

}

A kérdésem az, hogy hogyan lehet szabályozni azt, hogy a preferences.xml-ben felsorolt tagok milyen adattípusúak legyenek? A fenti kód ugyanis az iMinutesOffset értéket csak String-ként hajlandó beolvasni, ha int-ként próbálom az .edit(), aztán -commit() kiírni, utána cast hibát kapok.

Ezexerint pl. a putInt/getInt metódusok csak custom értékek tárolására használhatók? 

Köszönöm

      
      
Page viewed times
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels