我在我的应用程序中使用片段.这是我的第一个片段,只是夸大了一个xml文件:
public class FragmentA extends SherlockFragment
{
Context myContext,appContext;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
myContext = getActivity();
appContext=getActivity().getApplicationContext();
arguments = getArguments();
doctor_id=arguments.getInt("doctor_id");
userType=arguments.getString("userType");
return inflater.inflate(R.layout.left_panel, container,false);
}
Run Code Online (Sandbox Code Playgroud)
这是left_panel .xml,它包含一个片段:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<fragment
android:id="@+id/titles"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
class="com.example.sample.ListFrag" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这是我的ListFrag类:
public class ListFrag extends Fragment
{
Context myContext,appContext;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
layoutView = inflater.inflate(R.layout.activity_doctor_list,container); …Run Code Online (Sandbox Code Playgroud) 嗨,我正在创建一个应用程序,它是一个标签应用程序.
在我的Home中扩展了sherlockFragmentActivity,我正在膨胀menu.xml并包含on optionMenuitem点击监听器的代码.Fragmentactivity包含tabhost,并在每个选项卡上加载片段.这是我的menu.xml
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="always"
android:icon="@drawable/setting_selector"
android:title=""
>
<menu >
<item
android:id="@+id/Profile"
android:showAsAction="ifRoom"
android:title="Profile"/>
<item
android:id="@+id/chngDoctor"
android:showAsAction="ifRoom"
android:title="Change doctor"
android:visible="false"/>
<item
android:id="@+id/changePword"
android:showAsAction="ifRoom"
android:title="Change password"/>
<item
android:id="@+id/logout"
android:showAsAction="ifRoom"
android:title="Logout"/>
</menu>
</item>
Run Code Online (Sandbox Code Playgroud)
这是我在类Home中的onCreateOptionMenu和onOptionItemSelected方法
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
getSupportMenuInflater().inflate(R.menu.main, menu);
SubMenu subMenu = (SubMenu) menu.getItem(0).getSubMenu();
if(userType.equals("admin"))
subMenu.getItem(1).setVisible(true);
else
subMenu.getItem(1).setVisible(false);
return true;
}
Run Code Online (Sandbox Code Playgroud)
这是我的onOptionItemSelected方法
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId()) {
case R.id.Profile:
break;
case R.id.changePword :
break;
case R.id.chngDoctor :
break; …Run Code Online (Sandbox Code Playgroud) 我正在使用包含2个不同子项的可扩展ListView.子布局包含3个EditText字段.当我展开组时,它会显示子布局,但我无法在edittext字段中键入任何文本.
我在自定义可扩展列表适配器中的代码如下:
public View getChildView(int groupPosition, int childPosition, boolean arg2, View childView,
ViewGroup parent)
{
switch (groupPosition)
{
case 0:
childView = inflater.inflate(R.layout.edit_personal_layout, null);
final EditText fname = (EditText)childView.findViewById(R.id.editTextFname);
fname.setOnClickListener(new OnClickListener() {
public void onClick(View arg0)
{
// TODO Auto-generated method stub
fname.setFocusable(true);
}
});
break;
case 1:
childView = inflater.inflate(R.layout.edit_experience_layout, null);
break;
case 2:
childView = inflater.inflate(R.layout.edit_qualification_layout, null);
break;
case 3:
childView = inflater.inflate(R.layout.edit_login_layout, null);
break;
case 4:
childView = inflater.inflate(R.layout.edit_other_layout, null);
break;
}
return childView;
}
public View …Run Code Online (Sandbox Code Playgroud)