2012-05-10 59 views
0

我試圖創建一個沒有背景LabelField可言,作爲一個透明的。我有一個背景設置爲我的屏幕與位圖,我想我的LabelField透明。如何透明背景設定在的LabelField黑莓

我有以下代碼,但它不起作用。

BitmapField info; 
EncodedImage logoBitmap = EncodedImage.getEncodedImageResource("userInfo.png"); 
info = new BitmapField(null, Field.FIELD_LEFT |Field.FIELD_BOTTOM); 
info.setImage(logoBitmap); 
AbsoluteFieldManager superMainContainer; 
superMainContainer.add(info,0,200); 
LabelField nameLabel = new LabelField("Name:"); 
nameLabel.setBackground(BackgroundFactory.createSolidTransparentBackground(0, 0)); 
superMainContainer.add(nameLabel, 10, 210); 

回答

1


[更新]

下列代碼段是工作在我的模擬器。下面的代碼和你的代碼之間的區別只是一些初始化代碼。應用BackgroundnameLabel -

Bitmap bm = Bitmap.getBitmapResource("image.png"); 
BitmapField info = new BitmapField(bm, Field.FIELD_LEFT 
     | Field.FIELD_BOTTOM); 

LabelField lbl = new LabelField("LabelField Text"); 
lbl.setBackground(BackgroundFactory.createSolidTransparentBackground(0, 0)); 

AbsoluteFieldManager superMainContainer = new AbsoluteFieldManager(); 
superMainContainer.add(info, 0, 200); 
superMainContainer.add(lbl, 10, 210); 

MainScreen screen = new MainScreen(); 
screen.add(superMainContainer); 

UiApplication.getUiApplication().pushScreen(screen); 


[老]

LabelField lbl; 
lbl.setBackground(BackgroundFactory.createSolidTransparentBackground(0, 0)); 

你沒有初始化LabelField

而且您不需要設置任何Background實例來獲取透明背景,默認LabelField將適用於這種情況。

+0

這只是一個,我認爲是相關部分的代碼..我初始化標籤,我知道,有一個簡單的後臺工作,事情是當你把一個標籤與位圖字段作爲背景.. –

+0

你需要粘貼你正在使用的代碼。請用必要的代碼片段更新您的問題。此外,您嘗試設置背景的方法對我來說似乎並不常見。您正在向FieldManager添加一個「BitmapField」,爲什麼不將「Bitmap」/「EncodedImage」設置爲該FieldManager的「背景」? – Rupak

+0

你可以檢查更新的答案。 – Rupak