关于android 选项卡效果及选项卡在屏幕中位置的任意放置

Windows下利用WSA实现无缝运行安卓应用(最详细) 详细介绍Windows11 一个著名特性:安卓子系统 从安装到使用的全过程,涵盖各种可能遇到的错误和障碍,并给出详细的解决方案。通过亲身经历记录各种会遇到的情况,让大家更方便、快捷地使用该功能。 阅读详情

在PC端我们经常见到选项卡 选项卡简洁,便捷,美观  下面介绍一下选项卡在android中的实现。

先放上2张效果图:

  


进入正题 先贴上布局文件的代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/dtbg"
    >
<RelativeLayout 
    
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    
    >
       <Button 
           android:id="@+id/jy_backbutton"
           android:layout_height="wrap_content"
           android:layout_width="wrap_content"
           android:background="@drawable/dtfh"
           />
      

       <TextView 
        android:id="@+id/jy_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/dttt"
        android:text="家园论坛"
        android:layout_toRightOf="@+id/jy_backbutton"
        android:gravity="center"
        android:textSize="25dp"
        />

       <ImageView
           android:id="@+id/jytp"
           android:layout_width="fill_parent"
           android:layout_height="80dp"
           android:layout_below="@+id/jy_title"
           android:background="@drawable/jy"/>
        
       
		/>
 <!--重点内容-->

    <TabHost xmlns:android="http://schemas.android.com/apk/res/android"  
   		android:id="@android:id/tabhost" 
   		android:layout_width="fill_parent"  
     	        android:layout_height="150dp"
     	        android:layout_below="@id/jytp"
     	        >  
        <LinearLayout 
           android:orientation="vertical"  
           android:layout_width="fill_parent" 
           android:layout_height="fill_parent"> 
        <TabWidget 
           android:id="@android:id/tabs"  
           android:layout_width="fill_parent"
           android:layout_height="40dip"
           android:background="#003366"
	   android:layout_weight="0" 
	   android:gravity="center"
	    />


         <FrameLayout 
           android:id="@android:id/tabcontent"  
           android:layout_width="fill_parent"   
           android:layout_height="wrap_content"  
           android:layout_weight="1" >  
         <TextView 
           android:layout_width="wrap_content"  
           android:layout_height="wrap_content"  
           android:id="@+id/view2"
          android:text="这是热帖"
 
           />

          <TextView
              android:id="@+id/view1"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" 
            android:text="这是热帖"
             />
  
      </FrameLayout>    
    </LinearLayout>  
  </TabHost>
<!--这是我做的东西的内容 大家可以忽略 为了让大家看下效果-->
 <RelativeLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFCC"
    android:layout_below="@android:id/tabhost"
    >
  
   <TextView
       android:id="@+id/jy_line"
       android:layout_width="fill_parent"  
       android:layout_height="1dp"
       android:background="#000000"/>

  <TextView
       android:id="@+id/jy_fake1"
       android:layout_width="fill_parent"  
       android:layout_height="20dp"
       android:layout_below="@+id/jy_line"/>

   <ImageView 
       android:id="@+id/xxzh"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:background="@drawable/xxzh"
       android:layout_below="@id/jy_fake1"
       android:layout_marginLeft="20dp"
       />

   <TextView 
       android:id="@+id/xxzh_title"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:text="    信息综合"
       android:textSize="15dp"
       android:layout_toRightOf="@id/xxzh"
       android:layout_below="@id/jy_fake1"
              />
    <TextView 
       android:id="@+id/xxzh_content"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:text="     学生市场\n     XX问问\n     勤工俭学"
       android:layout_toRightOf="@id/xxzh"
       android:layout_below="@id/xxzh_title"
    />

   <ImageView 
       android:id="@+id/kfxq"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:background="@drawable/kfxq"
       android:layout_below="@id/jy_fake1"
       android:layout_marginLeft="180dp"
       />

   <TextView 
       android:id="@+id/kfxq_title"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:textSize="15dp"
       android:text="    咖啡心情"
       android:layout_toRightOf="@id/kfxq"
       android:layout_below="@id/jy_fake1"
              />

   <TextView 
       android:id="@+id/kfxq_content"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:text="     文字心情\n     闲聊酒吧\n"
       android:layout_toRightOf="@id/kfxq"
       android:layout_below="@id/kfxq_title"
    />

   <TextView
       android:id="@+id/jy_fake2"
       android:layout_width="fill_parent"  
       android:layout_height="10dp"
       android:layout_below="@id/xxzh_content"/>

   <ImageView 
       android:id="@+id/bfah"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:background="@drawable/bfah"
       android:layout_below="@id/jy_fake2"
       android:layout_marginLeft="20dp"
       />

   <TextView 
       android:id="@+id/bfah_title"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:textSize="15dp"
       android:text="    缤纷爱好"
       android:layout_toRightOf="@id/bfah"
       android:layout_below="@id/jy_fake2"
              />

   <TextView 
       android:id="@+id/bfah_content"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:text="     快拍XX\n     体坛动态\n     XX2012暑期社会实践"
       android:layout_toRightOf="@id/bfah"
       android:layout_below="@id/bfah_title"
    />
 
   <ImageView 
       android:id="@+id/glzq"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:background="@drawable/glzq"
       android:layout_below="@id/jy_fake2"
       android:layout_marginLeft="180dp"
       />

   <TextView 
       android:id="@+id/glzq_title"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:textSize="15dp"
       android:text="    管理专区"
       android:layout_toRightOf="@id/glzq"
       android:layout_below="@id/jy_fake2"
              />
 
   <TextView 
       android:id="@+id/glzq_content"
       android:layout_width="wrap_content"  
       android:layout_height="wrap_content"
       android:text="     申请专区\n     斑竹专区\n     建议投诉\n     论坛公告"
       android:layout_toRightOf="@id/glzq"
       android:layout_below="@id/glzq_title"
    />
   
 </RelativeLayout>
    
</RelativeLayout>
</LinearLayout>

下面重点来看选项卡部分的代码:

 <!--TabHost为tab的容器 id必须为tabhost-->
    <TabHost xmlns:android="http://schemas.android.com/apk/res/android"  
        android:id="@android:id/tabhost" 
   	android:layout_width="fill_parent"  
     	android:layout_height="150dp"
     	android:layout_below="@id/jytp"
     	>  
   <LinearLayout 
       android:orientation="vertical"  
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"> 


   <!--TabWidget为选项卡的标签 id必须为tabs-->
      <TabWidget 
      android:id="@android:id/tabs"  
      android:layout_width="fill_parent"
      android:layout_height="40dip"
      android:background="#003366"
	  android:layout_weight="0" 
	  android:gravity="center"
	  />
 
  <!--Tab的内容 id必须为tabcontent-->
      <FrameLayout 
      android:id="@android:id/tabcontent"  
      android:layout_width="fill_parent"   
      android:layout_height="wrap_content"  
      android:layout_weight="1" > 
 <!--内容可以根据需要 可以是textview imageview等等 有几个标签就可以放几个组件>
          <TextView 
          android:layout_width="wrap_content"  
          android:layout_height="wrap_content"  
          android:id="@+id/view2" 
          android:text="这是热帖"
          />


          <TextView
              android:id="@+id/view1"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content" 
              android:text="这是新帖"/>
  
      </FrameLayout>    
    </LinearLayout>  
  </TabHost>

其实选项卡任意位置放置就是利用linearlayout讲所有的组件包起来 只是哪个组件放在上面哪个放在下面的问题 我们可以将选项卡放在顶部 中部 或者是底部。


下面贴上JAVA部分的代码:

package com.example.hdu_tong;


import android.app.TabActivity;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;

import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TabHost;
import android.widget.TabWidget;
import android.widget.TextView;

public class HsjytabActivity extends TabActivity { // 让这个activity继承Tabactivity
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.hsjy);
        setTitle("红色家园");
        TabHost tabHost =  getTabHost();  
        tabHost.addTab(tabHost.newTabSpec("tab1")
        		.setIndicator("热帖")
        		.setContent(R.id.view1)); //与xml中的内容部分的id要对应起来 
        tabHost.addTab(tabHost.newTabSpec("tab2")
        		.setIndicator("新帖")
        		.setContent(R.id.view2));
        

        TabWidget tabWidget=this.getTabWidget(); 
                
//下面是一些美化工作 也比较常用实用。

               for (int i = 0; i < tabWidget.getChildCount(); i++) {   
                  TextView tv=(TextView)tabWidget.getChildAt(i).findViewById(android.R.id.title);   
                  
                    tv.setTextSize(20);//设置字体的大小;   
                  tv.setTextColor(Color.WHITE);//设置字体的颜色;
                  RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) tv.getLayoutParams();
                  params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 0); //取消文字底边对齐
                  params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); //设置文字居中对齐
                                                  
      }
   }

这样android上的选项卡效果大体上就实现了。大家有需要的就去试试吧。本人也是新手 可能以上内容会有错误,欢迎大家指出。








        
安卓抓包证书系统化:Magisk模块一键解决Android 7.0+证书信任问题 HTTPS中间人抓包是移动应用开发、安全测试和网络调试中的关键技术,其核心在于设备必须信任抓包工具安装的根证书。自Android 7.0起,系统默认仅信任预置的系统证书,导致用户手动安装的抓包证书对许多应用无效,这是由系统安全策略和证书验证机制决定的。为解决此问题,Magisk模块提供了一种优雅的Systemless方案,它利用挂载命名空间技术,在系统启动时将用户证书动态注入到系统证书的虚拟视图中,从而实现无需修改只读系统分区即可提升证书权限。这一技术极大简化了开发调试和安全研究的环境配置流程,尤其适用于需 阅读详情

相关推荐

ADB环境配置与核心命令实战:安卓开发调试必备指南

在移动应用开发与测试领域,命令行工具是连接开发环境与目标设备、实现自动化操作的关键桥梁。其核心原理在于建立稳定的通信链路,通过特定的协议与指令集,实现对设备的远程控制与信息交互。掌握这类工具能极大提升开发调试效率,实现应用安装卸载、日志抓取、文件传输等高频操作。ADB(Android Debug Bridge)正是安卓生态中这样一款集设备连接、应用管理、系统调试于一体的多功能工具,被誉为移动开发的“瑞士军刀”。本文将从环境变量配置与USB驱动安装等基础环节入手,详解如何解决“command not foun

weixin_30699955的博客 456

android 选项卡_带选项卡的Android操作栏

android 选项卡 从API级别11引入了操作栏。在本文中,我将说明如何在带有片段的操作栏中创建标签。 最终结果显示在下面,用户可以在两个选项卡之间移动。 创建操作栏和选项卡 第一步是获取操作栏引用并将标签添加到其中: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreat...

706

Android 实现选项卡效果的方法

在上述代码中,我们首先通过 findViewById() 方法获取到选项卡的容器 FrameLayout,然后在 onCreate() 方法中调用 addTab() 方法来添加选项卡。addTab() 方法接受选项卡的标签和对应的 Activity 类名作为参数,它会创建一个新的 Intent,并使用 ActivityGroup 的 getLocalActivityManager().startActivity() 方法启动对应的 Activity。如果您有任何疑问,请随时提问。

CyberFlare的博客 424

Android中选项卡功能的实现

Android中使用TabHost和TabWidget来实现选项卡功能。TabHost必须是布局的根节点,它包含两个子节点: TabWidget,显示选项卡; FrameLayout,显示标签内容。 实现选项卡功能有两种方法,一种是将多个View放在同一个Activity中,然后使用使用标签来进行切换。另一种是直接使用标签切换不同的Activity。 后一种方法更为常用一些。本文也

cool_android的专栏 1万+

19、定制你的安卓平板电脑

本博文详细介绍了如何对安卓平板进行个性化定制,包括更换背景图片、添加主屏幕应用和小工具、调整锁屏方式、设置所有者信息、更改通知声音以及调整屏幕亮度等操作步骤。通过这些技巧,用户可以更好地优化设备使用体验,让安卓平板更符合个人需求和习惯。

weixin_29885875的博客 519

Android App开发超实用实例 | ​Activity

介绍Activity内各View间的关系,讲解不同Android版本设置全屏的方法。通过案例了解Activity的生命周期流转。布局文件实现Android应用程序的界面设计,而Activity作为Android的应用组件,通过Java代码设计实现UI交互功能。一个App通常由一个或多个Activity组成。

不断学习,不断进步,提高自己 4063

android选项卡_android基础控件(一)选项卡的实现

1.TabHost+TabWidget+FragmentLayout1.1 主布局main_layout<TabHost android:layout_width="match_parent" android:layout_height="match_parent" android:id="@android:id/tabhost"> 自带布局 &l...

weixin_34639033的博客 2070

fragment实现页面选项卡

通过fragment实现Tab页面选项卡,非常实用,简单易懂。。。

Android开发之TabLayout的使用(实现三种常用的选项卡效果)

前言:对于选项卡,以前我们使用TabHost,或者经常使用别人封装好的选项卡!今天我们来使用一下google给我们提供的选项卡,一样可以做的很强大,效果一样很好!!!

等待着冬天的风的博客 1万+

Android中使用View实现选项卡

最近写项目,有一个功能,使用View实现选项卡功能,我把写好的里上传到这里,希望和大家交流学习

基于安卓Android实现选项卡功能源码.zip

源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经

QtScrcpy:如何用5分钟实现安卓设备高效投屏与键鼠控制

还在为手机屏幕太小而烦恼?想在大屏幕上流畅操作安卓应用却苦于复杂的连接流程?QtScrcpy 作为一款开源的安卓投屏与控制软件,通过 USB 或网络连接实现安卓设备的实时显示与低延迟控制,无需 root 权限即可享受跨设备协作的便捷体验。无论你是游戏玩家、办公人士还是开发者,这款工具都能以其出色的性能满足你的多样化需求。 ## 为什么选择QtScrcpy?四大核心优势解析 ### 超低延迟体验

gitblog_00061的博客 236

Android利用Fragment实现Tab选项卡效果

主要为大家详细介绍了Android利用Fragment实现Tab选项卡效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

Android控件——ViewPager

摘要ViewPager r最早出自4.0版本,那么低版本如何能使用ViewPager呢?为了兼容低版本安卓设备,谷歌官方给我们提供了一个的软件包android.support.v4.view。这个V4包囊了只有在安卓3.0以上可以使用的api,而viewpager就是其中之一。利用它,我们可以做很多事情,从最简单的引导页导航,到轮转广告,到页面菜单等等,无不出现ViewPager的身...

aozhan1913的博客 220

Android多个TAB选项卡切换效果

主要介绍了Android多个TAB选项卡切换效果的实现代码,感兴趣的小伙伴们可以参考一下

微处理器实验报告-实验四

实验四 可编程定时/计数器8253实验 一、实验要求 利用8086外接8253可编程定时/计数器,可以实现方波的产生。 二、实验目的 1、学习8086与8253的连接方法。 2、学习8253的控制方法。 3、掌握8253定时器/计数器的工作方式和编程原理

青竹小轩的博客 5110

android 动态添加表格监听服务器插入数据_工作型PPT系列文章---插入选项卡

大家好,今天我们看看插入选项卡的那些功能。话不多说,直接上。新建幻灯片 在开始选项卡已讲解过,可以看看这篇文章表格 展现数据说明,对于那些专业的PPT设计师,一般在PPT都很少用表格来呈现,都是手绘的精美图表。 但是在一般的职场中,还是很常用的,比如下面这张,简单的改改,就可以很不错,你知道是怎么改的吗?简单的图表表格的插入有一下几种: 1、直接插入表格 2、从Excel复制,在选择选择性粘贴,选...

weixin_28813401的博客 212

使用 C# 开发海康设备实时视频流的监控与报警系统

本文介绍了如何使用C#结合海康威视SDK(HCNetSDK)开发安防监控系统,涵盖设备登录、视频流获取、报警处理和云台控制等核心功能。内容包括开发环境配置、系统架构设计、关键代码实现(如设备登录、实时视频播放、报警设置)以及用户界面设计。通过Windows Forms/WPF,开发者可构建完整的监控应用,实现设备管理、视频监控、报警响应等功能。系统采用模块化设计,便于扩展和维护,适用于各类安防场景。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1355

快速上手Android Rubber Indicator:5分钟实现弹性动画指示器

想要为你的Android应用添加炫酷的弹性动画指示器吗?Android Rubber Indicator正是你需要的终极解决方案!这个简单易用的库能够让你在5分钟内为ViewPager或其他滑动组件添加流畅的橡皮筋效果指示器,让应用界面瞬间生动起来。无论你是Android开发新手还是经验丰富的开发者,都能快速掌握这个强大的弹性动画指示器工具。 ## 🎯 什么是Android Rubber In

gitblog_00711的博客 413

一桶令牌的时间账本:四类限流算法的边界推演与Guava RateLimiter源码精读

限流的难点不在背出算法名,而在算清每一笔账:按哪一秒计数、超额请求排队还是拒绝、空闲后能否突发、集群总量如何约束。本文在可复现的虚拟时间实验台上对比固定窗口、滑动窗口、漏桶与令牌桶,实测边界双倍突发与分桶滑动的真实上界,拆解Nginx limit_req的千分位记账与延迟机制,纠正Resilience4j常被误称漏桶的说法,并逐行精读Guava SmoothRateLimiter的预消费、懒惰补账与预热积分,复刻迷你限流器与其完成七万次零差异对账,最后给出集群配额、分层防护与参数确定的方法。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 86万+

合肥工业大学操作系统实验9

依据操作系统课程所介绍的页面置换算法与动态内存分配的原理,本实验的目的是掌握OPT、FIFO、LRU、LFU、Clock等页面置换算法;掌握可用空间表及分配方法;掌握边界标识法以及伙伴系统的内存分配方法和回收方法。从而深入理解操作系统的内存管理。从而加深对教材上页面置换算法与动态内存分配的理解。

Martin-share的博客 1094

android viewPager的简单使用案例

1 认识一下ViewPager?      ViewPager最早出自4.0版本,那么低版本如何能使用ViewPager呢?为了兼容低版本安卓设备,谷歌官方给我们提供了一个的软件包android.support.v4.view。这个V4包囊了只有在安卓3.0以上可以使用的api,而viewpager就是其中之一。利用它,我们可以做很多事情,从最简单的引导页导航,到轮转广告,到页面菜单等等,无

平下上 3300

MATLAB点云处理总目录

点云处理研究学习

weixin_44329757的博客 2555
上一篇: Eclipse汉化教程
下一篇: android中scrollview的使用
Lee_cpp
博客等级 码龄14年 4粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值