创建一个安卓应用的demo,demo的主题自选,主要功能:用户在登录界面输入账号和密码进行验证,验证正确手机跳入首页窗口显示欢迎标题,在首页窗口上有子菜单,点击菜单项1在当前窗口下显示相应内容,点击菜单项2,弹出一个新窗口,该窗口屏幕3分之一显示标题,3分之2部分显示具体详细内容,当用户点击左边标题,右边弹出相应的内容。
1.创建登录界面(只写了活动,布局文件暂时省略)
package com.example.fragment;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
Button button;
EditText userNameTxt;
EditText passwordTxt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button= (Button) findViewById(R.id.button);
userNameTxt= (EditText) findViewById(R.id.userNameTxt);
passwordTxt= (EditText) findViewById(R.id.passwordTxt);
}
public void click(View v){
String userName=userNameTxt.getText().toString();
String password=passwordTxt.getText().toString();
if(userName.equals("wangEnQi")&&password.equals("17116010047")){
Intent intent=new Intent(MainActivity.this,SubMenuActivity.class);
startActivity(intent);
}
}
}
2.创建子菜单
package com.example.fragment;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.widget.TextView;
import android.widget.Toast;
public class SubMenuActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sub_menu);
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
SubMenu subMenu=menu.addSubMenu(0,2,Menu.NONE,"子菜单");
MenuItem renameItem=subMenu.add(2,201,1,"菜单选项1");
renameItem.setIcon(android.R.drawable.ic_menu_edit);
MenuItem shareItem=subMenu.add(2,202,2,"菜单选项2");
shareItem.setIcon(android.R.drawable.ic_menu_share);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()){
case 201:
Toast.makeText(getApplicationContext(),"这是菜单选项1的内容",Toast.LENGTH_SHORT).show();
break;
case 202:
Intent intent=new Intent(SubMenuActivity.this,fragment_main.class);
startActivity(intent);
break;
}
return true;
}
}
3.创建Fragment页面
package com.example.fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class fragment_main extends AppCompatActivity {
Button displayBtn;
Button displayBtn2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fragment_main);
displayBtn= (Button) findViewById(R.id.displayBtn);
displayBtn2= (Button) findViewById(R.id.displayBtn2);
displayBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FragmentManager fragmentManager=getFragmentManager();
FragmentTransaction transaction=fragmentManager.beginTransaction();
RightFragment rightFragment=new RightFragment();
transaction.add(R.id.right,rightFragment);
transaction.commit();
}
});
displayBtn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FragmentManager fragmentManager2 = getFragmentManager();
FragmentTransaction transaction2 = fragmentManager2.beginTransaction();
RightFrgment2 rightFrgment2=new RightFrgment2();
transaction2.replace(R.id.right,rightFrgment2);
transaction2.commit();
}
});
}
}
4.创建两个Fragment
(1)第一个Fragment
package com.example.fragment;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
public class RightFragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
}
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle saveInstanceState){
View view=inflater.inflate(R.layout.fragment_right,null);
Button button= (Button) view.findViewById(R.id.frgBtn);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity(),"我是Fragment",Toast.LENGTH_SHORT).show();
}
});
return view;
}
@Override
public void onPause(){
super.onPause();
}
}
(2)第二个Fragment
package com.example.fragment;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.Toast;
public class RightFrgment2 extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
}
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstancedState) {
View view = inflater.inflate(R.layout.right_ragment_2, null);
Button button = (Button) view.findViewById(R.id.fukuan);
return view;
}
public void pay(View v){
Toast.makeText(getActivity(),"我是Fragment", Toast.LENGTH_SHORT).show();
}
@Override
public void onPause(){
super.onPause();
}
}