自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 Android学习|控件—— PopupWindow页面嵌入布局框

Android学习|控件—— PopupWindow主要方法主要方法1、setContentView(View contentView):设置PopupWindow显示的view2、showAsDropDown(View anchor):相对某个控件的位置(正左下方),无偏移3 、showAsDropDown(View anchor, int xoff, int yoff):相对某个控件的位置,有偏移4、 setFocusable(boolean focusable):设置是否获取焦点&nb

2022-03-02 19:30:44 1890

原创 Android学习|Fragment——03.Fragment的生命周期

Android学习|Fragment——03.Fragment的生命周期一、Fragment生命周期图二、不同操作下fragment周期状态一、Fragment生命周期图二、不同操作下fragment周期状态

2022-03-02 11:43:34 3199

原创 Android学习|Fragment——02.Avtivity与Fragment通信

Avtivity与Fragment通信划分Avtivity与Fragment通信Fragment与Avtivity通信Fragment与Fragment通信1、Avtivity与Fragment通信原生方案:Bundle类作为通信数据保存的载体Bundle可保存string,byte等多种类型数据,而对于自定义的实体类Bean的保存,可使用putParcelable(string key,Parcelable value)实现 Parcelable 设计序列化之类的实现的然后activ

2022-03-02 10:00:05 2247

原创 Android学习|Fragment__01静态、动态添加Fragment

什么是Fragment1:具备生命周期Fragment有生命周期,那么在一个activity可以使用多个Fragment,或者一个Fragment在多个activity 中重复使用,来完成一些效果2、必须委托在activity中才能运行则一个activity暂停,其中包含的所有的Framgment都会暂停动态添加Fragment...

2022-03-01 16:52:18 3204

原创 Android学习|视图翻页——ViewPager

PagerAdapter的方法getCount()获得viewpager中有多少个viewinstantiateltem()1.将给定位置的view添加到viewGroup(容器)中,创建并显示出来2返回一个代表新增页面的object(key),通常都是直接返回view本身就可以了,当然你也可以自定义自己的key,但是key和每个view要一—对应的关系isViewFromObject()判断instantiateltem(ViewGroup, int)函数所返回来的Key与一个页面视图是否是

2022-02-28 17:27:08 1174

原创 Android学习|单位和尺寸

不同手机尺寸大小不一px与pt的区别px: pixels(像素).不同设备显示效果相同pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;dp与sp的作用dip: device independent pixels(设备独立像素).不同设备有不同的显示效果,这个和设备硬件有关(适配不同屏幕大小),一般我们为了支持wVGA、HVGA和QvGA推荐使用这个,不依赖像素。dp:就是dip 设备越大,1dp占用的像素越多sp: scaled pixels(

2022-02-28 16:13:26 711

原创 Android学习|动画——逐帧、补间、属性动画

Android学习|动画一、动画类型1.逐帧动画(frame-by-frame animation) : 几张图片进行快速的播放形成的动画2.补间动画(tweened animation)3.属性动画(property animation)逐帧动画(frame-by-frame animation) : 几张图片进行快速的播放形成的动画1、drawable下创建xml,添加animation-lisanimation-list添加图片 duration 一张图片显示的多少毫秒02

2022-02-28 15:32:43 2336

原创 Android学习|布局列表——RecyclerView

效果和 ListView 效果接近,只是RecyclerView更灵活,效果更多RecyclerView需要先导入依赖包才能进行使用,类似导入jar导包:bulid.gradle中添加dependencies {implementation 'androidx.recyclerview:recyclerview:1.1.0"}...

2022-02-25 18:27:58 2193

原创 Android学习|布局列表—— ListView

Android学习|布局列表—— ListView一、实现ListView1、自定义ListView里的小条目Item2、模拟接收到一些要显示的数据3、获取ListView4、通过 listView 的setAdapter()方法进行数据填充ps:主Activity类中获取到的ListView也可以给Item条目设置点击事件ListView效果如下,显示的是多个布局的一个列表,其中每个布局可进行自定义。<?xml version="1.0" encoding="utf-8"?><L

2022-02-25 15:32:35 2705

原创 Android学习|布局—— ConstraintLayout 约束布局

Android学习|布局—— ConstraintLayout 约束布局一、概述二、指导线三、推导约束:根据布局自己推导约束四、清除所有约束一、概述ConstraintLayout :约束布局 。项目自己创建的就是约束布局该布局下,基本不需要去进行编码,只需要将需要的组件 插入、调整位置即可。如上图所示,在1的位置选择需要的组件,然后拖入2,然后在3处调整大小、位置、文本等属性,然后根据需要也可以使用3处的 “指导线”、“清除约束”、“推导约束” 几个功能例如,如下图,创建一个button,

2022-02-25 11:37:06 1833

原创 Android学习|布局——GridLayout 表格布局_(可行、列合并)

Android学习|布局——GridLayout 表格布局一、GridLayout 行、列 都可以进行合并二、常见属性三、子控件属性四、Demo1、常见属性Demo一、GridLayout 行、列 都可以进行合并TableLayout只能设置其占据几列(列合并),而不能进行行的合并,要进行行的合并,可使用GridLayout布局。二、常见属性1、android:orientation : 设置水平显示还是垂直显示2、android:columnCount : 设置行的显示个数3、an

2022-02-25 11:36:54 9684

原创 Android学习|布局——TableLayout 表格布局

Android学习|布局——TableLayout 表格布局一、概述二、常见属性4、子控件设置属性一、概述TableLayout :即表格布局。当TableLayout下面写控件、则控件占据一行的大小。(自适应一行,不留空白)但是,想要多个组件占据一行,则配合TableRow实现二、常见属性1、android:collapseColumns:设置需要被隐藏的列的序号,从o开始2、android:stretchColumns:设置允许被拉伸的列的列序号,从o开始3、android:shrin

2022-02-24 20:57:46 8926

原创 Android学习|布局—— FrameLayout 悬浮

Android学习|布局—— FrameLayout 悬浮一、常见属性二、前景属性Demo      FrameLayout 与 RelativeLayout 类似。 都是布局包含多个子 FrameLayout 布局时,子布局是重叠的,且最后一个布局位于最上方。类似多个图层的重叠效果。一、常见属性1、android:foreground: 设置前景2、android:foregroundGravity: 设置前景位置 &nb

2022-02-24 19:58:22 898

原创 Android学习|布局—— RelativeLayout悬浮布局

Android学习|布局—— RelativeLayout悬浮布局一、根据父容器定位二、根据兄弟组件定位三、通用属性与LinearLayout不同,父级布局包含多个子RelativeLayout布局时,这几个子布局是重叠的,并且最后一个布局位于最上方。类似多个图层的重叠效果。所以,需要设置相对定位进行位置确定,通过以下属性进行设置。一、根据父容器定位layout_alignParentLeft :左对齐layout_alignParentRight :右对齐layout_alignPare

2022-02-24 18:20:24 3147

原创 Android学习|布局—— LinearLayout

Android学习|布局—— LinearLayout常见属性1、orientation:布局中组件的排列方式。vertical为纵向排列、horizontal为水平排列2.、gravity : 控制组件所包含的子元素的对齐方式,可多个组合3、layout_gravity: 控制该组件在父容器里的方式:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、 fill_horizontal、cente

2022-02-24 18:20:02 1361

原创 Android学习|控件—— AlertDialog小弹窗

Android学习|控件—— AlertDialog概述实现方式概述AlertDialog:用于弹出消息框,消息框可定义按钮,也可自定义布局实现方式1、AlertDialog.Builder builder = new AlertDialog.Builder(context);构建Dialog的各种参数2、Builder.setlcon(int iconld); 添加ICON、设置图标3、Builder.setTitle(CharSequence title);添加标题4、Builder.s

2022-02-24 18:19:25 1337

原创 Android学习|组件 —— ToolBar工具栏

Android学习|组件 —— ToolBar常见属性正常下,显示界面上方会有一个标题界面。在values-themes.xml中设置 style name=“Theme,FirstDemo” 的parent为"Theme.MaterialComponents.DayNight.NoActionBar"常见属性1、android:layout_width=“match_parent” :宽度2、android:layout_height="?attr/actionBarSize" :设置成

2022-02-24 18:18:14 1365

原创 Android学习|控件——Notification通知

Android学习|控件——Notification通知一、前提二、两个对象的的构建1、创建NotificationManager2、使用Builder构造器来创建Notification2.1、NotificationChannel3、创建两个对象完整代码4、Notifition常用方法三、实现一个简单的通知四、实现点击后跳转到app的通知一、前提实现通知,要创建两个对象 ----- Notification、NotificationManager进行操作。二、两个对象的的构建1、创建Not

2022-01-05 22:51:21 3538 2

原创 Android学习|控件___ProgressBar进度条

Android学习 | 控件 —— ProgressBar进度条主要属性非水平进度条实现隐藏与显示不显示进度的水平进度条按钮控制进度条的加载进度主要属性1、android:max:进度条的最大值2、android:progress:进度条已完成进度值3、android:indeterminate:如果设置成true,则进度条不精确显示进度4、style="?android:attr/progressBarstyleHorizontal":水平进度条非水平进度条实现隐藏与显示 &nb

2022-01-05 22:21:36 2007

原创 Android学习|控件_imageView

Android学习|控件_imageView主要属性scalefype属性演示主要属性1.android:src:设置图片资源2.android:scalefype:设置图片缩放类型3.android:maxHeight:最大高度4,android:maxWidth:最大宽度5.android:adjustViewBounds:调整View的界限scalefype属性上述主要属性中,缩放类型scalefype包含如下内容:​ 1,fitstart:保持宽高比缩放图片,直到较长的边与Ima

2022-01-03 22:36:38 847

原创 Android学习|控件_EditText

Android学习|控件_EditText主要属性简单案例实现Java实现类似登录获取账号密码EditText类似html中的input输入标签 主要属性1.android:hint:输入提示2.android:textColorHint:输入提示文字的颜色3.android:inputType:输入类型(数字、密码…)4,android:drawablexxxx:在输入框的指定方位添加图片5.android:drawablePadding:设置图片与输入内容的间距6.android:pa

2022-01-03 22:30:38 1044

原创 Android学习|控件_Button

Android学习|控件_ButtonStateListDrawable基础属性基础实例1.btton图标设置及变化2.button背景色设置及变化Button事件处理1.点击事件2.长按事件3.触摸事件三个事件完整代码如下StateListDrawableStateListDrawable是Drawable资源的一种,可以根据不同的状态,设置不同的图片效果,关键节点selector,我们只需要将Button的background属性设置为该drawable资源即可轻松实现,按下按钮时不同的按钮颜色或背

2021-12-30 20:04:59 1017

原创 Android学习|控件_TextView

Android 控件-----TextView基础属性1.layout-width:组件的宽度2.layout height:组件的高度(xml中,ctrl+点击可查看属性可能的值)march_parent: 组件取容器大小宽(高)warp_content:根据TextView中内容进行分配 。(宽度由内容撑开,但不能超过容器大小)200dp: 类似 px,指定大小3.id:为TextView设置一个组件id:@+id/做前缀,后面才是真正id(例如:@+id/textview_one)。

2021-12-30 19:51:21 663

原创 Android学习|Android Studio 项目工程结构介绍

Project结构下.gradle .idea 为Android Studio 自动生成的文件gradle 是构建器。里面包含wrapper目录其中gradle-wrapper.properties 如下,里面包含geadle的版本等信息.gitignore 版本控制。git使用build.gradle 是项目全局的gralde构建脚本。类似配置文件,基本不用动gradle.properties 是全局的gradle 配置文件gradlew 执行gradle命令可能需要。这个是

2021-12-16 12:59:15 2375

原创 Android学习|第一次创建启动Adnroid项目(包含创建虚拟手机)

1.创建启动Android工程选择new project一般选择空白的Empty Activity如下界面后,项目路径避免中文路径出现,语言选择Kotlin(java的选java)。等待完成创建项目(自己下载相应文件)选择如下路径,看界面Project视图路径如下显示面板效果如下2.创建一个虚拟手机设备出现如下界面选择一个手机样式创建,点击next选择一个手机安卓系统,并下载(选到相应的系统后,点Download)(下载系统如下)下载完成,回到这个界面,点

2021-12-04 18:30:31 2970

原创 Android学习|Android Studio 安装

1.官网下载安装https://developer.android.google.cn/studio/下载成功,然后安装安装成功会出现这个界面,选择第二个接下来出现这个,选择不给Google发送消息了可暂不用配置,直接cancel至此,工具暂时安装完成。2.下来配置需要的工具包之类的打开软件,选择标准的工具包主题风格自己选安装sdk,安装路径注意避免中文、空格安装完成...

2021-12-04 18:15:36 2083

原创 IDEA创建mybatis框架web项目

IDEA创建mybatis框架web项目一.idea新建项目新建的时候选择java Enterprise ,选择jdk,maven仓库等。点击next二.选择Web Profile,点击next选择Web Profile后,idea会自动勾选web项目需要的其他配置。三.项目名设置点击finsh后会创建出mybatis框架的web项目四.进行配置1.进行maven仓库配置打开settings ->Build,Execution,Deployment->Build Tool

2021-05-11 18:25:30 1050

原创 Java练习_异常

定义三个整数变量a,b,c 判断能否构成一个三角形 如果不能请抛出一个自定义异常自定义异常类package com.ff.day1.Exception;public class Throw_SorceException extends Exception{ /* 自定义异常类 根据业务需求自定义异常类显示异常信息做提示 */ public Throw_SorceException(String message) { //构造方法

2021-01-18 00:04:20 112

原创 Java_异常1

一、异常的概念异常是指程序在运行过程中出现的所有不正常的情况广义上:所有不正常的情况狭义上:程序在运行的过程中出现不正常的情况,在进行异常的处理机制后,仍能正常运行的情况二、异常的体系java.lang.Throwable有两个直接子类:Exception类、Error类1.Error:Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。一般不编写针对性的代码进行处理。2.Exception:其它因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行

2021-01-18 00:00:01 113

原创 Java练习_面对对象2

1.定义一个银行类属性:账号、密码、存款余额。方法:创建账号、存款、取款、查询。创建该类对象并测试package com.ff.javaoop.lei;import java.util.Scanner;public class Bank { /* 定义一个银行类, 属性:账号、密码、存款余额,银行名称。 方法:创建账号、存款、取款、查询。 创建该类对象并测试*/ int Zhanghao; int mima; int yue=100

2021-01-17 22:41:38 80

原创 Java练习_面对对象1

1. 定义一个Student类, 属性有学号,姓名,年龄,性别,语文成绩,数学成绩,英语成绩, 方法有:学习,考试(打印输出学习,考试即可)) 创建两个学生对象,并给属性赋值和调用方法package com.ff.javaoop.lei;public class Student { /* 属性有学号,姓名,年龄,性别,语文成绩,数学成绩,英语成绩, 方法有:学习,考试(打印输出学习,考试即可)) 创建两个学生对象,并给属性赋值和调用方法*/

2021-01-17 22:32:16 167

原创 Java——final关键字、接口

final关键字用于声明类、方法、属性修饰类不能被定义为抽象类或是接口,不可被继承修饰属性定义就必须直接赋值或者在构造方法中进行赋值,并且后期都不能修改。修饰方法:子类里不可重写覆盖父类中final修饰的方法。...

2020-12-27 00:48:27 338

原创 Java——多态

多态同一种事物,在不同时刻表现的不同的状态一、多态存在的必要条件1.要有继承关系2.要有方法的重写3.父类的引用指向子类对象当编译期类型是父类,运行期类型是子类时,被称为父类引用指向子类对象Object dog=new Dog(); //Object的引用指向Dog对象父类package com.ff.javaoop.lei4.duotai;public abstract class Animal { public final int Num=15; publi

2020-12-27 00:04:37 69

原创 Java——抽象类与关联、依赖关系

抽象类如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法。用abstract修饰的类就是抽象类。如果某个类中包含有抽象方法,那么该类就必须定义成抽象类。抽象类的定义[访问权限修饰符] abstract class 类名{ }抽象方法的定义[访问权限修饰符] 返回值类型/void abstract 方法名(参数);抽象类的特点1.抽象类不能被实例化,但可以有构造函数,因为抽

2020-12-26 23:22:24 916

原创 Java——继承、方法的重写

继承是从已有的类中派生出新的类,新的类能吸收已有类的属性和行为,并能扩展新的能力。1.在JAVA中使用extends关键字来表示继承关系。2.JAVA不支持多继承,单继承使JAVA的继承关系很简单,一个类只能有一个直接父类。3.继承之后子类可以调用父类的所有非私有属性和非私有方法继承的形式:[访问权限修饰符][修饰符] 子类名 extends 父类名{子类体}继承的优点1.实现代码可重用的根基2.提高代码可扩展性的主要途径继承中的构造方法1.子类构造方法总是先调用父类构造方法,默

2020-12-26 21:36:39 148

原创 Java—封装

封装将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问封装的好处1.只能通过规定方法访问2.隐藏类的实现细节3.方便加入控制语句4.方便修改实现具体表现1.属性使用private权限2.方法使用public权限package com.ff.javaoop.lei4;public class demo { private String name; //封装成员变量 private int age; p

2020-12-26 21:11:40 58

原创 Java程序练习——创建一个圆Circle类。为该类提供两个方法:方法一用于求圆的面积,方法二用于求圆的周长

创建一个圆Circle类。 为该类提供一个变量r表示半径,一个常量 final PI表示圆周率; 同时为该类提供两个方法:方法一用于求圆的面积,方法二用于求圆的周长; 为该类提供一个无参的构造方法,用于初始化r的值为4。 在main方法中测试。package com.ff.javaoop.lei2;public class Circle { /*创建一个圆Circle类。 为该类提供一个变量r表示半径,一个常量 final PI表示圆周率; 同时为该类提供两个方法:方法一用

2020-12-09 17:08:03 15505

原创 Java程序练习——猜数

猜数字游戏:一个类A有个成员变量v,v有一个初值100。 定义一个方法guess,对A类的成员变量v,进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。package com.ff.javaoop.lei2;import java.util.Scanner;public class CaiShu { static int a=100; int b; public static void caishu1(){ Scanner c=new Sca

2020-11-27 23:09:32 352

原创 程序练习——比较大小:利用重载

比较大小:分别利用重载,对两个int,两个double,三个int,三个double类型的数进行比较大小,返回其中较大的一个package com.ff.javaoop.lei;public class ChongZai { /*比较大小:分别利用重载,对两个int,两个double,三个int,三个double类型的数进行比较大小,返回其中较大的一个.*/ int a1; int a2; int a3; double b1; double b2;

2020-11-27 23:06:13 991

原创 程序联系—定义一个银行类,创建该类对象并测试

定义一个银行类, 属性:账号、密码、存款余额,银行名称。 方法:创建账号、存款、取款、查询。创建该类对象并测试package com.ff.javaoop.lei;import java.util.Scanner;public class Bank { /* 定义一个银行类, 属性:账号、密码、存款余额,银行名称。 方法:创建账号、存款、取款、查询。 创建该类对象并测试*/ int Zhanghao; int mima; int yue=1

2020-11-27 23:03:11 1053

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除