drawerlayout布局代码

2024-04-02 07:08
文章标签 代码 布局 drawerlayout

本文主要是介绍drawerlayout布局代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


   tablayout布局
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/gen"><!--先写主背景--><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/zhubeijing"android:orientation="vertical"><ImageViewandroid:clickable="true"android:id="@+id/touxiang"android:padding="10dp"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@mipmap/ic_launcher"/><com.example.diantouxiangcehua.view.XListViewandroid:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/xlist_view"></com.example.diantouxiangcehua.view.XListView></LinearLayout><RelativeLayoutandroid:layout_width="250dp"android:layout_height="match_parent"android:background="#ffffff"android:layout_gravity="left"android:id="@+id/cemian"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="这是侧面"/></RelativeLayout></android.support.v4.widget.DrawerLayout>

代码===============================================

public class MainActivity extends FragmentActivity {private DrawerLayout drawerLayout;private ListView listView;private FrameLayout frameLayout;private RelativeLayout relativeLayout;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.activity_main);//抽屉的跟布局drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);//选项的菜单listView = (ListView) findViewById(R.id.list_view);//主内容区域的布局frameLayout = (FrameLayout) findViewById(R.id.frame_layout);//抽屉显示的布局relativeLayout = (RelativeLayout) findViewById(R.id.relative_layout);final List<String> list = new ArrayList<>();for (int i = 1; i<10;i++){list.add(i+"");}//设置适配器ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(MainActivity.this, android.R.layout.simple_list_item_1, android.R.id.text1, list);listView.setAdapter(arrayAdapter);//条目的点击事件listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {//要有一个fragment替换后面主内容的frameLayoutWeiXinFragment weiXinFragment = new WeiXinFragment();//传值过去Bundle bundle = new Bundle();bundle.putString("key",list.get(i));weiXinFragment.setArguments(bundle);getSupportFragmentManager().beginTransaction().replace(R.id.frame_layout,weiXinFragment).commit();//关闭抽屉drawerLayout.closeDrawer(relativeLayout);}});}
}

==代码 点击头像侧滑显示================================================

package com.example.diantouxiangcehua;import android.os.AsyncTask;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;import com.example.diantouxiangcehua.view.XListView;
import com.google.gson.Gson;import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.time.chrono.MinguoChronology;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;public class MainActivity extends AppCompatActivity implements XListView.IXListViewListener {private ImageView imageView;private RelativeLayout cemian;private DrawerLayout gen;private LinearLayout zhubeijing;private XListView xlistView;private MyAdapter myAdapter;//大的集合存放数据,,涉及到xlistviewprivate List<DBean.ResultBean.RowsBean> list =new ArrayList<>();@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);imageView = (ImageView) findViewById(R.id.touxiang);cemian = (RelativeLayout) findViewById(R.id.cemian);//根布局gen = (DrawerLayout) findViewById(R.id.gen);//主背景zhubeijing = (LinearLayout) findViewById(R.id.zhubeijing);xlistView = (XListView) findViewById(R.id.xlist_view);//设置xlistView.setXListViewListener(this);xlistView.setPullLoadEnable(true);xlistView.setPullRefreshEnable(true);imageView.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//如果没有打开侧面栏目if (! gen.isDrawerOpen(cemian)){//就打开gen.openDrawer(cemian);}}});myTask myTask = new myTask();myTask.execute();}@Override//下拉刷新public void onRefresh() {myTask myTask = new myTask();myTask.execute();}@Overridepublic void onLoadMore() {myTask myTask = new myTask();myTask.execute();}class myTask extends AsyncTask<Void,Void,String>{@Overrideprotected String doInBackground(Void... voids) {String path = "http://api.fang.anjuke.com/m/android/1.3/shouye/recInfosV3/?city_id=14&lat=40.04652&lng=116.306033&api_key=androidkey&sig=9317e9634b5fbc16078ab07abb6661c5&macid=45cd2478331b184ff0e15f29aaa89e3e&app=a-ajk&_pid=11738&o=PE-TL10-user+4.4.2+HuaweiPE-TL10+CHNC00B260+ota-rel-keys%2Crelease-keys&from=mobile&m=Android-PE-TL10&cv=9.5.1&cid=14&i=864601026706713&v=4.4.2&pm=b61&uuid=1848c59c-185d-48d9-b0e9-782016041109&_chat_id=0&qtime=20160411091603";try {URL    url = new URL(path);HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod("GET");connection.setConnectTimeout(5000);connection.setReadTimeout(5000);int responseCode = connection.getResponseCode();if (responseCode==200){InputStream inputStream = connection.getInputStream();String json =streamToString(inputStream,"utf-8");return json;}} catch (Exception e) {e.printStackTrace();}return null;}@Overrideprotected void onPostExecute(String json) {Log.i("--",json);Gson gson = new Gson();DBean dBean = gson.fromJson(json, DBean.class);list.addAll(0,dBean.getResult().getRows());setAdapter();//停止刷新xlistView.stopRefresh();Date date = new Date(System.currentTimeMillis());SimpleDateFormat format = new SimpleDateFormat("HH:mm");xlistView.setRefreshTime(format.format(date));}}private void setAdapter() {if (myAdapter==null) {myAdapter = new MyAdapter(list, MainActivity.this);xlistView.setAdapter(myAdapter);}else{myAdapter.notifyDataSetChanged();}}private String streamToString(InputStream inputStream,String charset) {try {InputStreamReader inputStreamReader = new InputStreamReader(inputStream,charset);BufferedReader bufferedReader = new BufferedReader(inputStreamReader);String s = null;StringBuilder builder = new StringBuilder();while ((s = bufferedReader.readLine()) != null){builder.append(s);}bufferedReader.close();return builder.toString();} catch (Exception e) {e.printStackTrace();}return null;}
}



这篇关于drawerlayout布局代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/869311

相关文章

C++对象布局及多态实现探索之内存布局(整理的很多链接)

本文通过观察对象的内存布局,跟踪函数调用的汇编代码。分析了C++对象内存的布局情况,虚函数的执行方式,以及虚继承,等等 文章链接:http://dev.yesky.com/254/2191254.shtml      论C/C++函数间动态内存的传递 (2005-07-30)   当你涉及到C/C++的核心编程的时候,你会无止境地与内存管理打交道。 文章链接:http://dev.yesky

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

公共筛选组件(二次封装antd)支持代码提示

如果项目是基于antd组件库为基础搭建,可使用此公共筛选组件 使用到的库 npm i antdnpm i lodash-esnpm i @types/lodash-es -D /components/CommonSearch index.tsx import React from 'react';import { Button, Card, Form } from 'antd'

vue, 左右布局宽,可拖动改变

1:建立一个draggableMixin.js  混入的方式使用 2:代码如下draggableMixin.js  export default {data() {return {leftWidth: 330,isDragging: false,startX: 0,startWidth: 0,};},methods: {startDragging(e) {this.isDragging = tr

17.用300行代码手写初体验Spring V1.0版本

1.1.课程目标 1、了解看源码最有效的方式,先猜测后验证,不要一开始就去调试代码。 2、浓缩就是精华,用 300行最简洁的代码 提炼Spring的基本设计思想。 3、掌握Spring框架的基本脉络。 1.2.内容定位 1、 具有1年以上的SpringMVC使用经验。 2、 希望深入了解Spring源码的人群,对 Spring有一个整体的宏观感受。 3、 全程手写实现SpringM

代码随想录算法训练营:12/60

非科班学习算法day12 | LeetCode150:逆波兰表达式 ,Leetcode239: 滑动窗口最大值  目录 介绍 一、基础概念补充: 1.c++字符串转为数字 1. std::stoi, std::stol, std::stoll, std::stoul, std::stoull(最常用) 2. std::stringstream 3. std::atoi, std

Toolbar+DrawerLayout使用详情结合网络各大神

最近也想搞下toolbar+drawerlayout的使用。结合网络上各大神的杰作,我把大部分的内容效果都完成了遍。现在记录下各个功能效果的实现以及一些细节注意点。 这图弹出两个菜单内容都是仿QQ界面的选项。左边一个是drawerlayout的弹窗。右边是toolbar的popup弹窗。 开始实现步骤详情: 1.创建toolbar布局跟drawerlayout布局 <?xml vers

记录AS混淆代码模板

开启混淆得先在build.gradle文件中把 minifyEnabled false改成true,以及shrinkResources true//去除无用的resource文件 这些是写在proguard-rules.pro文件内的 指定代码的压缩级别 -optimizationpasses 5 包明不混合大小写 -dontusemixedcaseclassnames 不去忽略非公共

麻了!一觉醒来,代码全挂了。。

作为⼀名程序员,相信大家平时都有代码托管的需求。 相信有不少同学或者团队都习惯把自己的代码托管到GitHub平台上。 但是GitHub大家知道,经常在访问速度这方面并不是很快,有时候因为网络问题甚至根本连网站都打不开了,所以导致使用体验并不友好。 经常一觉醒来,居然发现我竟然看不到我自己上传的代码了。。 那在国内,除了GitHub,另外还有一个比较常用的Gitee平台也可以用于

众所周知,配置即代码≠基础设置即代码

​前段时间翻到几条留言,问: “配置即代码和基础设施即代码一样吗?” “配置即代码是什么?怎么都是基础设施即代码?” 我们都是知道,DevOp的快速发展,让服务器管理与配置的时间大大减少,配置即代码和基础设施即代码作为DevOps的重要实践,在其中起到了关键性作用。 不少人将二者看作是一件事,配置即大代码是关于管理特定的应用程序配置设置本身,而基础设施即代码更关注的是部署支持应用程序环境所需的