Android学习之——杂项
new: 强类型。相对高效。能调用任何public构造。
自己做可以保证安全,而且可以有多个口味,什么酱,放多少自己定。new对象不会因为找不到类而出异常,而且你还可以调用多个构造函数,按照自己口味去new对象,去做一份符合自己口味的。
在外面吃,可能会你点的菜那个店里没有,或者是口味不对,你要吃番茄酱,但是人家只有花生酱。而且菜没洗干净你也不知道。newInstance也是如此,很可能你要的对象他不存在,或者是参数不对。
// 生成调用Webservice方法的SOAP请求信息.该信息由SoapSerializationEnvelope对象描述 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope( SoapEnvelope.VER11); envelope.bodyOut = rpc; envelope.dotNet = true; envelope.setOutputSoapObject(rpc); ht.call(NAMESPACE + methodName, envelope); if (envelope.bodyIn.toString().startsWith("SoapFault")) { SoapFault sf = (SoapFault) (envelope.bodyIn); Log.i("fault", sf.faultstring); if (handler != null) { Message message = Message.obtain(handler); message.what = 3; message.obj = sf.faultstring; message.sendToTarget(); } return; } SoapObject result = (SoapObject)envelope.bodyIn; String str = result.getProperty("abc").toString();//从result里面找到名为"abc"的值 如:result的值为:getInfoResponse{abc=测试; } 那么,result.getProperty("abc")将会从result里面找到abc的值“测试”
Message message = Message.obtain(handler);
Activity <---------------> EHandler<-----> Looper<-----> MessageQueue
IntentReceiver <-----> EHandler <-----> Looper<-----> MessageQueue
public void closeDialog(final DialogInterface dialog, boolean close) { // 利用反射使点击按钮时,对话框不会关闭 try { // 得到AlertDialog的父类属性mShowing field = dialog.getClass().getSuperclass() .getDeclaredField("mShowing"); field.setAccessible(true); // 将mShowing变量设为false,表示对话框已关闭 field.set(dialog, close); dialog.dismiss(); } catch (NoSuchFieldException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } }详细的反射可以参照这篇文章
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。