当前位置:  编程技术>移动开发
本页文章导读:
    ▪resin jms 配备        resin jms 配置 resin jms 配置resin.jar <!-- - JMS MemoryQueue The Memory Queue and Topic are non-persistent. If the server restarts or even if the Queue's environment restarts, the messaging data will be lost. Applications needing pers.........
    ▪ 在应用程序中增添快捷图标        在应用程序中添加快捷图标 如何实现添加快捷图标? Launcher为了让其他应用程序能够定制自己的快捷图标,就注册了一个BroadcastReceiver专门接收其他应用程序发来的快捷图标定制信息。所以.........
    ▪ UINavigationController,UIBarButtonItem使用的例子       UINavigationController,UIBarButtonItem应用的例子 rootViewController.m文件 - (void)viewDidLoad { self.title = @"First Page"; NSMutableArray *array = [[NSMutableArray alloc] init]; DisclosureButtonController *buttonController = [[D.........

[1]resin jms 配备
    来源: 互联网  发布时间: 2014-02-18
resin jms 配置
resin jms 配置

resin.jar

<!--
     - JMS MemoryQueue
The Memory Queue and Topic are non-persistent. If the server restarts or even if the Queue's environment restarts, the messaging data will be lost. Applications needing persistent messaging should use the JDBC Queues.

    -->
	<resource jndi-name="jms/statusReplyQueue" type="com.caucho.jms.memory.MemoryQueue">
		<init>
			<queue-name>statusReplyQueue</queue-name>
		</init>
	</resource>

<!-- configures jms jndi name
The ConnectionFactory resource defines the JMS factory for creating JMS connections  -->
<resource jndi-name="jms/statusReplyQueueConnectionFactory" type="com.caucho.jms.ConnectionFactoryImpl">
	</resource>


The JDBC Queues and Topics provide a persistent messaging store. The Memory Queues and Topics provide a low-overhead memory-based store.


参考:
http://www.caucho.com/resin-3.0/jms/config.xtp

http://activemq.apache.org/tomcat.html

    
[2] 在应用程序中增添快捷图标
    来源: 互联网  发布时间: 2014-02-18
在应用程序中添加快捷图标
如何实现添加快捷图标?

Launcher为了让其他应用程序能够定制自己的快捷图标,就注册了一个BroadcastReceiver专门接收其他应用程序发来的快捷图标定制信息。所以只需要根据该BroadcastReceiver构造出相对应的Intent并装入我们的定制信息,最后调用sendBroadcast方法就可以创建一个快捷图标了。那么,要构造怎样一个Intent才会被Launcher的BroadcastReceiver接收呢?我们还是先来看看这个BroadcastReceiver的注册信息吧。
下面是Launcher的AndroidManifest.xml文件中Install-ShortcutReceiver的注册信息。
<!– Intent received used to install shortcuts from other applications –>
<receiver
android:name=”.InstallShortcutReceiver”
android:permission= “com.android.launcher.permission.INSTALL_SHORTCUT”>
<intent-filter>
<action android:name=”com.android.launcher.action.INSTALL_SHORTCUT” />
</intent-filter>
</receiver>

如何向这个 BroadcastReceiver 发送广播,设置如下:
  • 首先应用程序必须要有com.android.launcher.permission.INSTALL_SHORTCUT权限;
  • 然后广播出去的Intent的action设置com.android.launcher.action.INSTALL_SHORTCUT;
  • 这样广播就可以发送给Launcher的InstallShortcutReceiver了;
  • 而快捷图标的信息则是以附加信息的形式存储在广播出去的Intent对象中的,包括有图标、显示的名称以及用来启动目标组件的Intent这三种信息。我们可以通过putExtra的重载方法,通过指定相应的键值,将这些信息放到附加信息的Bundle对象中。

    列出了各种快捷图标信息相对应的键值和数据类型:

    下面举些具体的例子,如下:

    private final String ACTION_ADD_SHORTCUT =
    “com.android.launcher.action.INSTALL_SHORTCUT”;
    Intent addShortcut =new Intent(ACTION_ADD_SHORTCUT);
    String numToDial = null;
    Parcelable icon = null;

    numToDial = “110″;
    icon = Intent.ShortcutIconResource.fromContext(this,R.drawable.jing);

    //numToDial = “119″;
    //icon = Intent.ShortcutIconResource.fromContext(this,R.drawable.huo);

    //图标
    addShortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,icon);

    //名称
    addShortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME,numToDial);

    //启动目标组件的Intent
    Intent directCall;
    directCall.setData(Uri.parse(“tel://”+numToDial));
    addShortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT,directCall);
    sendBroadcast(addShortcut);
    上面的程序运行后的界面如下:

    总结说明

    只要知道这些信息后,你就可以轻而易举的为应用程序添加快捷图标。


        
    [3] UINavigationController,UIBarButtonItem使用的例子
        来源: 互联网  发布时间: 2014-02-18
    UINavigationController,UIBarButtonItem应用的例子

    rootViewController.m文件

    - (void)viewDidLoad
    {
        self.title = @"First Page"; 
        NSMutableArray *array = [[NSMutableArray alloc] init];
        DisclosureButtonController *buttonController = [[DisclosureButtonController alloc] initWithStyle:UITableViewStylePlain];
        buttonController.title = @"Button View";
        buttonController.image = [UIImage imageNamed:@"apple.png"];
        [array addObject:buttonController];
        
        self.listData = array;
        [array release];
        self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"主页" style:UIBarButtonItemStyleBordered target:self action:@selector(leftButtonPressed)];
        self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"下一页" style:UIBarButtonItemStyleBordered target:self action:@selector(rightButtonPressed)];
        [super viewDidLoad];
    }
    
    - (void)leftButtonPressed
    {
        NSLog(@"Lefl Button");
    }
    
    - (void)rightButtonPressed
    {
        NSLog(@"Right Button");
    }
    #pragma mark -
    #pragma mark Table View Data Source Methods
    
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    {
        return [self.listData count];
    }
    
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        static NSString *thekey = @"thekey";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:thekey];
        if(cell == nil){
            cell = [[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:thekey
                    ];
        }
        NSUInteger row = [indexPath row];
        secondLevelViewController *nextController = [listData objectAtIndex:row];
        cell.textLabel.text = nextController.title;
        cell.imageView.image = nextController.image;
        return cell;
    }
    
    #pragma mark -
    #pragma mark Table Delegate Methods
    
    - (UITableViewCellAccessoryType)tableView:(UITableView *)tableView accessoryTypeForRowWithIndexPath:(NSIndexPath *)indexPath
    {
        return UITableViewCellAccessoryDisclosureIndicator;
    }
    
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    {
        NSUInteger row = [indexPath row];
        secondLevelViewController *nextController = [listData objectAtIndex:row];
        [self.navigationController pushViewController:nextController animated:YES];
    }
    

     DisclosureDetailController.m文件

    - (void)viewDidLoad
    {
        label.text = message;
        self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"添加" style:UIBarButtonItemStyleBordered target:self action:@selector(rightMethods)];
    }
    
    - (void)rightMethods
    {
        NSLog(@"...........");
    }
    

     DisclosureButtonController文件

    - (void)viewDidLoad
    {
        NSArray *array = [[NSArray alloc]initWithObjects:@"The First One",@"The Second One",@"The Thr One",@"The Fou One", nil];
        self.list = array;
        [array release];
        self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"last Page" style:UIBarButtonItemStyleBordered target:self action:@selector(uppage)];
    
    }
    
    - (void)uppage
    {
        [self.navigationController popToRootViewControllerAnimated:YES];
    }
    
    - (void)dealloc
    {
        [list release];
        [super dealloc];
    }
    
    #pragma mark -
    #pragma mark Table View Data Source Methods
    
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    {
        return [self.list count];
    }
    
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        static NSString *theNewKey = @"theNewKey";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:theNewKey];
        if(cell == nil){
            cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:theNewKey] autorelease];
        }
        NSUInteger row = [indexPath row];
        NSString *theString = [list objectAtIndex:row];
        cell.textLabel.text = theString;
        
        return cell;
    }
    
    
    #pragma mark -
    #pragma mark Table Delegate Methods
    
    - (UITableViewCellAccessoryType)tableView:(UITableView *)tableView accessoryTypeForRowWithIndexPath:(NSIndexPath *)indexPath
    {
        return UITableViewCellAccessoryDetailDisclosureButton;
    }
    
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Waring" message:@"You Pressed" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
    
    - (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath
    {
        if(detailController == nil){
            detailController = [[DisclosureDetailController alloc] initWithNibName:@"DisclosureDetail" bundle:nil];
        }
        
        detailController.title = @"The Detail View";
        
        NSUInteger row = [indexPath row];
        
        NSString *warItem = [list objectAtIndex:row];
        NSString *detailSelect = [[NSString alloc] initWithFormat:@"You Pressed Is %@",warItem];
        detailController.message = detailSelect;
        [detailSelect release];
        [self.navigationController pushViewController:detailController animated:YES];
    
    }
    
     

        
    最新技术文章:
    ▪Android开发之登录验证实例教程
    ▪Android开发之注册登录方法示例
    ▪Android获取手机SIM卡运营商信息的方法
    ▪Android实现将已发送的短信写入短信数据库的...
    ▪Android发送短信功能代码
    ▪Android根据电话号码获得联系人头像实例代码
    ▪Android中GPS定位的用法实例
    ▪Android实现退出时关闭所有Activity的方法
    ▪Android实现文件的分割和组装
    ▪Android录音应用实例教程
    ▪Android双击返回键退出程序的实现方法
    ▪Android实现侦听电池状态显示、电量及充电动...
    ▪Android获取当前已连接的wifi信号强度的方法
    ▪Android实现动态显示或隐藏密码输入框的内容
    ▪根据USER-AGENT判断手机类型并跳转到相应的app...
    ▪Android Touch事件分发过程详解
    ▪Android中实现为TextView添加多个可点击的文本
    ▪Android程序设计之AIDL实例详解
    ▪Android显式启动与隐式启动Activity的区别介绍
    ▪Android按钮单击事件的四种常用写法总结
    ▪Android消息处理机制Looper和Handler详解
    ▪Android实现Back功能代码片段总结
    HTML教程 iis7站长之家
    ▪Android实现弹出键盘的方法
    ▪Android中通过view方式获取当前Activity的屏幕截...
    ▪Android提高之自定义Menu(TabMenu)实现方法
    ▪Android提高之多方向抽屉实现方法
    ▪Android提高之MediaPlayer播放网络音频的实现方法...
    ▪Android提高之MediaPlayer播放网络视频的实现方法...
    ▪Android提高之手游转电视游戏的模拟操控
     


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3