Reputation: 3625
I have a ListView where I'm filling it in through String tutorialTitle1 = getResources().getString(R.string.tutorial1_title);
, but for the purpose and functionality of my app I have no choice but to use a String-Array
I've never worked with the String-Array
and I'd like some help to implement every item in my ListView. At the moment I'm doing it this way
public class tutorialActivity extends Activity{
String[] values;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tutorial);
registerClickCallBack();
ListView listView = (ListView) findViewById(R.id.tutorialList);
String tutorialTitle1 = getResources().getString(R.string.tutorial1_title);
String tutorialTitle2 = getResources().getString(R.string.tutorial2_title);
String tutorialTitle3 = getResources().getString(R.string.tutorial3_title);
String tutorialTitle4 = getResources().getString(R.string.tutorial4_title);
String tutorialTitle5 = getResources().getString(R.string.tutorial5_title);
String tutorialTitle6 = getResources().getString(R.string.tutorial6_title);
String tutorialTitle7 = getResources().getString(R.string.tutorial7_title);
String tutorialTitle8 = getResources().getString(R.string.tutorial8_title);
String tutorialTitle9 = getResources().getString(R.string.tutorial9_title);
String tutorialTitle10 = getResources().getString(R.string.tutorial10_title);
String tutorialTitle11 = getResources().getString(R.string.tutorial11_title);
String tutorialTitle12 = getResources().getString(R.string.tutorial12_title);
String tutorialTitle13 = getResources().getString(R.string.tutorial13_title);
String tutorialTitle14 = getResources().getString(R.string.tutorial14_title);
values= new String[] { tutorialTitle1, tutorialTitle2, tutorialTitle3, tutorialTitle4, tutorialTitle5, tutorialTitle6, tutorialTitle7, tutorialTitle8, tutorialTitle9, tutorialTitle10, tutorialTitle11, tutorialTitle12, tutorialTitle13, tutorialTitle14};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, values);
listView.setAdapter(adapter);
}
private void registerClickCallBack() {
ListView list = (ListView) findViewById(R.id.tutorialList);
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View viewClicked,int position, long id) {
Intent i = new Intent(viewClicked.getContext(), tutorialContentActivity.class);
i.putExtra("tutorialNumber", position);
startActivity(i);
}
});
}
}
But now R.string.tutorial1_title
doesn't exist anymore because I've put it like
<string-array name="tutorialTitle">
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
<item>Tutorial Content</item>
</string-array>
So basically how can I populate my Listview with all the items I have in my <string-array name="tutorialTitle">
Upvotes: 2
Views: 10006
Reputation: 1007584
Call getResources().getStringArray(R.array.tutorialTitle)
to retrieve the String[]
associated with your string-array
resource.
Upvotes: 10