android AlertDialog

0 意見

new AlertDialog.Builder(this)
  .setTitle("title")
  .setMessage("Are you sure connect xxx")
  .setPositiveButton("OK", new DialogInterface.OnClickListener() {
   
   @Override
   public void onClick(DialogInterface dialog, int which) {
    
    // blah
   }
  })
  .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
   
   @Override
   public void onClick(DialogInterface dialog, int which) {
    // TODO Auto-generated method stub
    
   }
  }).show();

android direct to another APP

0 意見

Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.package.address");
startActivity(LaunchIntent);

iOS UITextField length limit

0 意見


use UITextFieldDelegate 

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    return (textField.text.length >= 64 && range.length == 0) ? NO : YES;
}

iOS avoid rotation recreating activity

0 意見

android:configChanges="orientation|keyboardHidden"
Caution: Beginning with Android 3.2 (API level 13), the "screen size" also changes when the device switches between portrait and landscape orientation. Thus, if you want to prevent runtime restarts due to orientation change when developing for API level 13 or higher (as declared by the minSdkVersion and targetSdkVersion attributes), you must include the "screenSize" value in addition to the "orientation" value. That is, you must decalare android:configChanges="orientation|screenSize". However, if your application targets API level 12 or lower, then your activity always handles this configuration change itself (this configuration change does not restart your activity, even when running on an Android 3.2 or higher device). reference

Android check External Storage State is available

0 意見

Boolean isExternalStorageAvailable = android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
if(isExternalStorageAvailable)
{
    // ok
}
else
{
    // fail
}

iOS prevent pop to navigation root while double-tap of UITabBarController

0 意見

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController {
    return viewController != tabBarController.selectedViewController;
}

iOS tableview header view

0 意見

- (void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section
{
    UITableViewHeaderFooterView *header = (UITableViewHeaderFooterView *)view;
    [header.textLabel setTextColor:[UIColor darkGrayColor]];
    
    // Set background color
    header.contentView.backgroundColor = [UIColor clearColor];
}