Custom TabActivity

  • Antworten:9
  • Bentwortet
Dominic Bartl
  • Forum-Beiträge: 180

09.06.2010, 20:31:26 via Website

Wisst ihr wie ich die Tabs in einer TabActivity verändern kann? Mit XML oder so?

Mit der ListView funktioniert des jah super, aber geht des auch mit den Tabs?
Ich habe nämlich schon viel Apps gesehn die eigene Hintergrundfarben, Fontfatben usw. haben.

Wäre euch dankbar mir ein paar Zeilen zu posten oder es zu erklären

Grüße

Antworten
Kay J.
  • Forum-Beiträge: 59

10.06.2010, 07:22:53 via Website

Hallo Dominic,

meinst du sowas?




Wenn ja, habe ich dazu vor ein paar tagen ein tutorial geschireben :D
http://sourceway.eu/wp/2010/06/android-tutorial-1-custom-tabs/

Wenn du was anderes meinst, wären genauere Informationen nicht schlecht =)

Antworten
Dominic Bartl
  • Forum-Beiträge: 180

10.06.2010, 19:41:08 via Website

ich hab das ausprobiert und es funktioniert nicht ganz :(

hier der code:
1TabHost.TabSpec spec;
2 spec = tabHost.newTabSpec("artists").setIndicator(new CostomTab(this, R.drawable.ca_male, "Home"))
3 .setContent(new Intent(this, ProfileActivity.class));
4 tabHost.addTab(spec);

Mein CustomTab:
1package at.bartinger.myfitness.views.tab;
2
3import android.content.Context;
4import android.widget.ImageView;
5import android.widget.LinearLayout;
6import android.widget.TextView;
7
8public class CostomTab extends LinearLayout {
9
10 private String label;
11
12 public CostomTab(Context context, int drawable, String label) {
13 super(context);
14 this.label = label;
15 ImageView iv = new ImageView(context);
16 TextView tv = new TextView(context);
17
18 iv.setImageResource(drawable);
19
20 tv.setText(label);
21
22 tv.setGravity(0x01); /* Center */
23 setOrientation(LinearLayout.VERTICAL);
24
25 addView(iv);
26 addView(tv);
27 }

aber beim spec = tabHost.newTabSpec(...) kommt links ein X mit den Vorschlägen:
The method setIndicator(CharSequence) in the type TabHost.TabSpec is not applicable for the arguments (CostomTab)
  • Cast argument 1 to CharSequence
  • Let CustomTab implement CharSequence

Antworten
Kay J.
  • Forum-Beiträge: 59

10.06.2010, 21:06:27 via Website

Hallo,

für welche SDK version entwickelst du?

Ich hab es nur mit minSDK 3(=1.5) und target 4(=1.6) getestet

1<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="4"/>

pack das mal in deine androidmanifest.xml


Mfg :D

Antworten
San Blarnoi
  • Forum-Beiträge: 2.545

10.06.2010, 22:40:41 via Website

Leuts, schaut doch einfach mal in die Doku:

public TabHost.TabSpec setIndicator (View view)
Since: API Level 4

Antworten
San Blarnoi
  • Forum-Beiträge: 2.545

10.06.2010, 23:33:08 via Website

Jo des is jetz dumm ;/ weist du jetz wie ich des für 1.6 mache?

Für 1.6 (API 4): wie es oben im Source steht.
Für 1.5 und älter (API 3 und älter): gar nicht, es sei denn du bastelst dir etwas vergleichbares selber.

Antworten
Kay J.
  • Forum-Beiträge: 59

11.06.2010, 07:32:41 via Website

für 1.5 könntest du mal folgendes testn, aber ka obs da auc wirklich läuft!

http://www.gregbugaj.com/?p=6

Das war die grundlage zur idee meine lösung für 1.6 zu finden, sieht ähnich aus, funktioniert auch, aber nicht so schön wie ich es gerne gehabt hätte ;)

Antworten