코드 샘플: 지도상 위치에 대한 태그 지정 및 가시성 설정
다음 코드 샘플은 지도를 만들고, 태그를 여러 위치에 할당하고, "work" 태그가 있는 위치만 표시합니다.
import net.rim.device.api.ui.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.lbs.maps.*;
import net.rim.device.api.lbs.maps.model.*;
import net.rim.device.api.lbs.maps.ui.*;
public class MapTaggingDemo extends UiApplication
{
public static void main(String[] args)
{
MapTaggingDemo theApp = new MapTaggingDemo();
theApp.enterEventDispatcher();
}
public MapTaggingDemo()
{
pushScreen(new MapTagScreen());
}
}
class MapTagScreen extends FullScreen
{
public MapTagScreen()
{
super(FullScreen.DEFAULT_CLOSE | FullScreen.DEFAULT_MENU |
FullScreen.VERTICAL_SCROLL | FullScreen.VERTICAL_SCROLLBAR);
RichMapField map = MapFactory.getInstance().generateRichMapField();
add(map);
MapDataModel data = map.getModel();
MapLocation julieHome = new MapLocation( 43.47751, -80.54817,
"Julie - Home", null );
MapLocation headOffice = new MapLocation( 43.47550, -80.53900,
"Head Office", null );
int julieHomeId = data.add( (Mappable) julieHome, "julie" );
data.tag( julieHomeId, "home" );
int headOfficeId = data.add( (Mappable) headOffice, "julie" );
data.tag( headOfficeId, "work" );
MapLocation paulHome = new MapLocation( 43.49487, -80.55335,
"Paul - Home", null );
int paulHomeId = data.add( (Mappable) paulHome, "paul" );
data.tag( paulHomeId, "home" );
data.tag( headOfficeId, "paul" );
data.tag( paulHomeId, "sarah" );
MapLocation manufacturing = new MapLocation( 43.46514, -80.50506,
"Manufacturing", null );
int manufacturingId = data.add( (Mappable) manufacturing, "sarah" );
data.tag( manufacturingId, "work" );
data.setVisibleNone();
data.setVisible( "work" );
map.getMapField().update( true );
}
}
다음 주제: 지도의 동작 제어
이전 주제: 지도상 위치에 대한 태그 지정 및 가시성 설정