封装了一个小小的方法,公供参考:/***为ActivityGroup的一个ViewGroup设置动态的ActivityView
对象**@param上下文*@paramLocalActivityManager对象*@paramActivityGroup想要包容Activity*View对象的容器(ViewGroup)*@param通过Intent的意图打算启用哪个Activity类*@param开始Activity*设置的Id*/publicstaticvoidgetView(Contextcontext,LocalActivityManagerlam,LinearLayoutlayout_load,Classcls,StringId){Intentintent=newIntent(context,cls)intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)Windoww=lam.startActivity(Id,intent)Viewv=w.getDecorView()layout_load.removeAllViews()layout_load.setPadding(5,5,5,5)layout_load.addView(v,newLinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.FILL_PARENT))}然后在ActivityGroup页面如此使用:privateLocalActivityManagermanager//声明一个LocalActivityManager对象manager=getLocalActivityManager()//得到这个对象界面
初始化时:/***初始化*/voidinit(){comonHelp.getView(this,manager,main,preferenceSet.class,"swc")}有了设置的ID了,那就可以得到当前的Activity了。下面给出我用过的一段代码,以作参考:SharedPreferences.Editoreditor=getSharedPreferences("com.swc.yaomei_preferences",Activity.MODE_PRIVATE).edit()LocalActivityManagermanager=getLocalActivityManager()PreferenceActivityacitivty=(PreferenceActivity)manager.getActivity("swc")for(inti=0i<9i++){editor.putString("KEY_"+i,"N/A")PreferenceScreenExtext=(PreferenceScreenExt)acitivty.findPreference("KEY_"+i)RelativeLayoutlayout=(RelativeLayout)ext.getLayout()TextViewsummary=(TextView)layout.getChildAt(1)summary.setText("N/A")}editor.commit()System.gc()上面的PreferenceActivity是得到一个PreferenceAcitity因为是要修改位于ActivityGroup里面对应的Preference所以这里要获得一个PreferenceAcitity,如果是一个普通的Activity直接得到一个Activity对象就行,之后的 *** 作都是一致的。第一个activity下的android:name就是主
进程了,修改""里面的内容就可以更换主进程了。
<activity
android:name="com.lcw.member.StarActivity"
android:label="@string/app_name" >
评论列表(0条)