文档章节

安卓顶部标题

 胡欢哥哥
发布于 2015/10/19 20:31
字数 228
阅读 154
收藏 0

精选30+云产品,助力企业轻松上云!>>>

package com.example.widget;
import android.content.Context;
import android.graphics.Canvas;
import android.util.AttributeSet;
import android.util.Log;
import android.view.View;
import android.widget.LinearLayout;
public class MyIndTitle extends LinearLayout {

 public MyIndTitle(Context context, AttributeSet attrs, int defStyle) {
  super(context, attrs, defStyle);
  // TODO Auto-generated constructor stub
 }

 public MyIndTitle(Context context) {
  super(context);
  // TODO Auto-generated constructor stub
 }

 private int everyMargin=20;//��߾����ұ�Ϊ20.
 private int topMargin=20;//��ʦΪ20��
 public int allWith;
 private int allWidth;
 private int allHeight;
 public MyIndTitle(Context context, AttributeSet attrs) {
  super(context, attrs);
  // TODO Auto-generated constructor stub


 }
 @Override
 protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
  // TODO Auto-generated method stub
  super.onMeasure(widthMeasureSpec, heightMeasureSpec);
  int childCount = getChildCount();
  allWidth = getMeasuredWidth();
  for (int i = 0; i <childCount; i++) {
   View view = getChildAt(i);
   view.measure(MeasureSpec.UNSPECIFIED,MeasureSpec.UNSPECIFIED);
  }
  setMeasuredDimension(allWidth,allHeight);
 }
 @Override
 protected void onLayout(boolean changed, int l, int t, int r, int b) {
  // TODO Auto-generated method stub
  super.onLayout(changed, l, t, r, b);
  Log.e("para",allWidth+"");
  for (int i = 0; i <getChildCount(); i++) {
   View childView = getChildAt(i);
   if(i==0){
    topMargin=20;//������Ϊ20 ��Ϊִ�ж���
    childView.layout(everyMargin,topMargin,everyMargin+childView.getMeasuredWidth(),topMargin+childView.getMeasuredHeight());

   }
   else {
    View prechildView = getChildAt(i-1);
    int x=prechildView.getRight()+everyMargin;
    if(x+childView.getMeasuredWidth()+everyMargin<=allWidth){
     childView.layout(x, topMargin,x+childView.getMeasuredWidth(),topMargin+childView.getMeasuredHeight());
    }
    else {
     childView.layout(everyMargin,prechildView.getBottom()+20,everyMargin+childView.getMeasuredWidth(),prechildView.getBottom()+20+childView.getMeasuredHeight());
     topMargin=prechildView.getBottom()+20;
     allHeight=prechildView.getBottom()+20+childView.getMeasuredHeight();//�����õ�ʵ�ʵĸ�
    }
   }}

 }

 @Override
 protected void dispatchDraw(Canvas canvas) {
  // TODO Auto-generated method stub
  super.dispatchDraw(canvas);
 }

 

 

 

}

粉丝 1
博文 5
码字总数 1646
作品 0
合肥
私信 提问
加载中
请先登录后再评论。
android学习系列(11)---setContainerView方法实现tab切换

1.预览图 先看下最终的界面设计图: 上面顶部是一个9patch背景图片+标题文字; 下面底部是5个tab标签,表示应用的5大模块。 中间内容部分则是各个模块的具体内容,可以再分类,或者直接显示内...

chengche
2013/12/05
10
0
Android自定义顶部栏及侧滑菜单和fragment+viewpag滑动切换的实现

嘿嘿嘿,关于android滑动的操作,是不是经常都会用到呢。 我肯定也要学习一下啦。 https://blog.csdn.net/u013184970/article/details/82882107 https://blog.csdn.net/qq_35820350/article/...

osc_arhujamz
2019/07/26
27
0
Android中如何继承自定义的Activity

一直困扰我的Activity继承问题解决了。通过这样的方式继承,可以简化具有相同样式的Activity的代码。比如一个项目中会有很多自定义ActionBar的Activity顶部是只包含返回按钮和标题,在父类中...

独鸣在彼岸
2015/06/11
255
0
Android 状态栏通知Notification

Notification可以在屏幕最顶部的状态栏上显示一个图标通知,通知的同时可以播放声音,以及振动提示用户,点击通知还可以返回指定的Activity.   今天例子的效果图: 布局main.xml: <?xml ver...

james_laughing
2014/12/16
134
2
Android应用经典主界面框架之中的一个:仿QQ (使用Fragment, 附源代码)

import org.yanzi.constant.Constant; import android.content.Context;import android.graphics.Color;import android.util.AttributeSet;import android.view.LayoutInflater;import andro......

osc_8mj3ztvg
2019/03/30
3
0

没有更多内容

加载失败,请刷新页面

加载更多

主机“ xxx.xx.xxx.xxx”不允许连接到该MySQL服务器

问题: This should be dead simple, but I cannot get it to work for the life of me. 这本来应该很简单,但是我无法让它在我的一生中发挥作用。 I'm just trying to connect remotely to......

技术盛宴
今天
14
0
Cocoa Autolayout:内容拥抱与内容压缩阻力优先

问题: I can't find a clear answer on Apple documentation regarding Cocoa Autolayout about the difference between content hugging and compression resistance. 关于Cocoa Autolayou......

javail
今天
24
0
OSChina 周二乱弹 —— 附近居民接连失踪,你们有什么头绪吗

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《伤离别(原版)》- 黄霑 手机党少年们想听歌,请使劲儿戳(这里) @巴拉迪维 :睡...

小小编辑
今天
44
0
IntelliJ IDEA 默认快捷键大全

Remember these Shortcuts 常用 功能 快捷键 备注 ● Smart code completion Ctrl + Shift + Space - ● Search everywhere Double Shift - ● Show intention actions and quick-fixes Alt......

巨輪
今天
30
0
Hacker News 简讯 2020-07-14

更新时间: 2020-07-14 03:01 Bitcoin is more like ham radio than the early internet - (jpkoning.blogspot.com) 比特币更像是火腿收音机,而不是早期的互联网 得分:97 | 评论:64 Chipmak...

FalconChen
今天
136
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部