2011-01-09 4 views
1

안녕하세요, 각 탭이 내 맞춤 비트 맵이되도록 탭 레이아웃을 설정했습니다. 이 메인 자바 파일입니다비트 맵 탭을 어느 위치에두기

public class HelloTabWidget1 extends TabActivity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 


    Resources res = getResources(); 
    TabHost tabHost = getTabHost(); 
    TabHost.TabSpec spec; 
    Intent intent; 

    intent = new Intent().setClass(this, ArtistsActivity.class);  
    ImageView imgView1 = new ImageView(this); 
    BitmapDrawable bmd1 = new BitmapDrawable(); 
    bmd1 = (BitmapDrawable) res.getDrawable(R.drawable.blue); 
    imgView1.setImageDrawable(bmd1); 
spec = tabHost.newTabSpec("firsttab").setIndicator(imgView1) 
.setContent(intent); 
tabHost.addTab(spec); 

    intent = new Intent().setClass(this, AlbumsActivity.class);  
    ImageView imgView2 = new ImageView(this); 
    BitmapDrawable bmd2 = new BitmapDrawable(); 
     bmd2 = (BitmapDrawable) res.getDrawable(R.drawable.pink); 
     imgView2.setImageDrawable(bmd2); 
     spec = tabHost.newTabSpec("secondtab").setIndicator(imgView2) 
     .setContent(intent); 
     tabHost.addTab(spec); 

    intent = new Intent().setClass(this, SongsActivity.class);  
    ImageView imgView3 = new ImageView(this); 
     BitmapDrawable bmd3 = new BitmapDrawable(); 
      bmd3 = (BitmapDrawable) res.getDrawable(R.drawable.purple); 
      imgView3.setImageDrawable(bmd3); 
      spec = tabHost.newTabSpec("thirdtab").setIndicator(imgView3) 
      .setContent(intent); 
      tabHost.addTab(spec); 

      intent = new Intent().setClass(this, Forthtab.class);  
      ImageView imgView4 = new ImageView(this); 
       BitmapDrawable bmd4 = new BitmapDrawable(); 
        bmd4 = (BitmapDrawable) res.getDrawable(R.drawable.red); 
        imgView4.setImageDrawable(bmd4); 
        spec = tabHost.newTabSpec("forthtab").setIndicator(imgView4) 
        .setContent(intent); 
        tabHost.addTab(spec); 



    tabHost.setCurrentTab(0); 
} 

} 내가 탭으로 원하는 비트 맵을 얻을 수있어

, 문제는 내 원래 비트 맵을보고 너무 작았 다, 나는 그들을 증가하면 크기는 화면 중간에 검은 색 공간이있는 거대한 검은 색 공간으로 끝납니다. 검은 색 공간을 클릭하면 그에 따라 탭이 변경됩니다. 그것을 맨 위로 되돌려 놓고 각 비트 맵을 탭으로 채우는 방법이 있습니까?

답변

0

임시 해결 방법을 찾을 수있었습니다. 나는 기본적으로 코드를 정확히 동일하게 유지했지만 내 이미지 파일을 가지고 놀았습니다. 내 비트 맵 사진을 png 파일로 변경했지만 중요한 점은 안드로이드 시스템이 탭 아이콘을위한 매우 민감한 시스템을 가지고있는 것처럼 보이는 것입니다. 중요한 것은 지침 here입니다. 이것이 일시적인 해결책이라고 말했기 때문에 나는 그걸로 더 놀아 나갈 계획입니다.

내가 지금 도움을 필요로하는 유일한 것은 48 x 48px의 Google 권장 설정에서 png 아이콘을 사용하여 탭을 연결하는 것이지만 탭 아이콘은 만지지 않습니다. 서로 만나는 솔루션을 찾고 있습니다.