全部 文章 问答 分享 共找到130个相关内容
求助,我在B站看到【领券联盟】显示分类数据-安卓项目开发实战课程毕业设计课程的第18集,老师也是这样子写的
在B站看到【领券联盟】显示分类数据-安卓项目开发实战课程毕业设计课程的第18集,老师也是这样子写的,为什么我这里不能转换呢
android毕业设计
我的毕业作品是一个通过遥感图像识别农村房屋并进行数字化的操作,但不知到该用什么控件来放遥感图像,并且还要再遥感图像上添加一个农村房屋的图层,不知道怎么实现这个控件,是自定义控件吗?
仿美团APP案例
毕业设计自选了一个仿美团的外卖类APP但是没上几节Android课,页面设计好了但是不会写代码。求一个能运行的案例研究研究。有推荐的课程最好。可付费
在线课程合集西瓜视频地址
在线课程合集西瓜视频地址 传送门
喜马拉雅项目-订阅数据库设计
喜马拉雅项目-订阅数据库设计我们需要什么字段呢?首先我们打算订阅界面,显示的内容跟首页的推荐一样,那么!有图片、title、描述、播放量、节目数量、作者名称(详情界面)专辑id 还记得创建数据库的
阳光沙滩博客系统
一个博客系统,适合新手学习,前后端分离的博客系统。只学习前端的同学可以。因为有API的,
安卓app和java web交互
我在完成一个毕设,需要安卓app发送的信息web端可以接受,这一块没有思路能不能请诸位大神指点一下
求助Android课程的领券联盟
在B站看到【领券联盟】显示分类数据-安卓项目开发实战课程毕业设计课程的第16集最后面的时候Log出现result code is 404,和老师的错误不一样啊!
安卓使用缓存报错
最近在做毕业设计,需要使用volley加载网络图片,同时对图片进行缓存。但运行报错如图。 希望有大神相助,时间挺赶的。谢谢啦!在此送上所有的sunof币再次表示感谢!
安卓创建sqlite数据库时候报红,初学者不知怎么办???
求助一下这个问题该怎么解决,我是安卓初学者做毕业设计,刚学几天,创建数据库运行的时候就弹出来这个错误,创建不了,不知道什么情况
喜马拉雅FM电台项目代码
同学们可以去下载喜马拉雅的代码,在看视频写代码的时候,最好不要直接复制粘贴。如果遇到问题才去参考一下。另外一个则是提高同学们的代码阅读能力。如果学习中遇到问题的话,可以发帖子提问交流,感谢大家的支持!
自定义控件手表相关的素材和图解
自定义控件手表相关的素材和图解 求刻度的图解 这个应该没什么难度吧,也就是三角函数 注意坐标的原点位置是左上角 还Y轴的正方向。 表盘背景 okay 在线课程地址,请参考这里 阳光沙滩程序猿拉大锯
领券联盟项目源码
领券联盟项目的源码,同学们可以下载看看,尝试着自己写一下,视频会在年后更新。本项目使用kotlin编写,考虑到还有同学没有转过来,视频会使用Java进行开发。使用Kotlin的同学可以参考一下github上的代码。编程语言只是工具,思想才是重要滴。
JavaWeb博客系统后端-课程介绍
课程目标 可以完成毕业设计的后台编写 可以编写一个属于自己的博客,并且部署到公网上 android/前端开发人员了解后台的开发 如果有可能,可以为你带来额外的收入 课程内容 课程包括后台和前端 前端
领券联盟-修改样式和颜色
领券联盟-修改样式和颜色 相关文章 领券联盟-页面分析以及导航栏的实现 colorPrimary、colorPrimaryDark、colorAccent colorPrimary colorPrimaryDark colorAccent 这三个颜色代表的是哪里的颜色呢? 一图胜千言 所以,到这里应该知道怎么修改颜色了吧? 主题 从效果图上看,我们是没有ActionBar的 我们修改一下主题样式 Theme.AppCompat.Light.NoActionBar 其他颜色的话,请看视频吧,或者已经学会了的同学自行修改即可。
喜马拉雅视频教程02-项目初始化
喜马拉雅视频教程02-项目初始化标注地址:https://lanhuapp.com/url/xzL8W账号: 地址:lanhuapp.com 账号:lanhu@sunofbeaches.com 密码:lanhu123 同学们可以使用这个账号来获取到标注内容,我会持续更新UI的图。创建项目创建对应的文件夹适配器文件夹—adapters工具类文件夹—utilsfragment文件夹—fragments逻辑相关的文件夹—presenters接口文件夹—interfaces自定义控件文件夹—views其他用到再定义吧初始化项目管理使用git进行管理
喜马拉雅视频教程03-集成喜马拉雅sdk
喜马拉雅视频教程03-集成喜马拉雅sdk上一节课我们已经把项目搭建起来了,成功地跑起来了。配置好了git管理代码创建好了部分文件夹接下来,我们集成喜马拉雅的sdk网址:open.ximalaya.comsdk目录:用到再说明有什么用的吧,因为有些用不上,比如说付费流程。步骤:下载sdk http://open.ximalaya.com/复制对应的库,jar包添加依赖sourceSets { main { jniLibs.srcDirs = ['libs'] }}验证sdk集成结果详情请看视频吧。
使用开源框架实现RecyclerView的下拉刷新和上拉加载更多
使用开源框架实现RecyclerView的下拉刷新和上拉加载更多我们在做喜马拉雅FM项目的时候,详情列表,需要上拉加载更多的功能到了50条以后,就再往上拉的话,那么就要去加载更多的内容…那怎么去实现呢?我们借助一个开源框架,直接包裹就可以使用,刷新控件效果的原理,我们会在自定义控件的课程里面进行讲解。https://github.com/lcodecorex/TwinklingRefreshLayout同学们可以给作者点个赞,表示感谢哈!具体怎么使用,同学们就去看视频吧!
Android开发学习路线
多媒体模块学习Android控件之RecyclerViewandroid开发基础轮播图,组合控件,自定义属性,自动轮播项目实战android开发喜马拉雅FM电台项目实战毕业设计课程android周边
喜马拉雅视频教程05-完成主界面的指示器和内容部分
喜马拉雅视频教程05-完成主界面的指示器和内容部分同学们,顶部这一块呢,其实是指示器(indicator) 在很多应用里都用得到现阶段同学们还不需要去知道怎么做出来的,知道怎么用就可以了。如果是为了快速开发,已经有前辈做好轮子了,直接使用即可。这里推荐大家使用这个:https://github.com/hackware1993/MagicIndicator使用开源框架的步骤:先把代码下载下来把项目运行起来,一般来说,除了lib包以外,还有demo的,而demo就是教你怎么去使用的。稍微看一下代码把需要的代码复制到自己的项目中修改代码,实现自己的需求以上对于完成任务来说已经够了。如果你想知道怎么写的,那么可以自己分析,也可以去看源码。开源的东西没有什么秘密呢。
喜马拉雅视频教程01-项目的开始
喜马拉雅视频教程01-项目的开始前面我们学习了搭建android的开发环境然后又学习了UI布局接着学习了数据持久化存储四大组件学习了Activity,BroadcastReceiver,Service。综合以上这些支持,我们可以尝试去做一个小项目了。喜马拉雅FM电台项目实战,把前面的知识点串起来,要不很快就忘记了。我们先不去管商业项目要注意哪些问题,我们的目的仅仅是完成一个能用的android应用,把前面所学习到的知识综合起来。以及一些没有学习到的知识,可以先了解一下!我们开始一个新的项目,要怎么开始呢,对吧!是不是一脸蒙逼呢?还是套路是一样的呢?接下来,我们就开始喜马拉雅这个项目吧。素材标注地址地址:lanhuapp.com 账号:lanhu@sunofbeaches.com 密码:lanhu123 同学们可以使用这个账号来获取到标注内容,我会持续更新UI的图。
喜马拉雅视频教程06-貌似我们可以做喜马拉雅主界面的推荐列表了
喜马拉雅视频教程06-貌似我们可以做喜马拉雅主界面的推荐列表了喜马拉雅视频教程06-貌似我们可以做喜马拉雅主界面的推荐列表了我们要开始做列表部分了 开心吗? 激动吗?在这一节,大家学会列表数据的展示学会使用recyclerView,如果没有学会同学,可以去看看视频哦!http://www.sunofbeaches.com/c/1179080584903847936具体的内容看视频吧!相信你会得到不一样的收获的!圆角矩形图片的代码package com.sunofbeaches.himalaya.views;import android.content.Context;import android.graphics.Canvas;import android.graphics.Path;import android.graphics.RectF;import android.support.v7.widget.AppCompatImageView;import android.util.AttributeSet;/*** Created by TrillGates on 18/10/7.* God bless my code!*/public class RoundRectImageView extends AppCompatImageView { private float roundRatio = 0.1f; private Path path; public RoundRectImageView(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onDraw(Canvas canvas) { if (path == null) { path = new Path(); path.addRoundRect(new RectF(0, 0, getWidth(), getHeight()), roundRatio * getWidth(), roundRatio * getHeight(), Path.Direction.CW); } canvas.save(); canvas.clipPath(path); super.onDraw(canvas); canvas.restore(); }}
阳光沙滩博客系统-删除用户
需要权限:管理员 是否真的删除呢?不是的呢,只是修改状态。 接口 /** * 需要管理员权限 * * @param userId * @return */ @DeleteMapping("/{userId}") public ResponseResult deleteUser(HttpServletResponse response, HttpServletRequest request, @PathVariable("userId") String userId) { //判断当前操作的用户是谁 //根据用户角色判断是否可以删除 //TODO:通过注解的方式来控制权限 return userService.deleteUserById(userId, request, response); } 修改用户状态代码 /** * 删除用户,并不是真的删除 * 而是修改状态 *

* PS:需要管理员权限 */ @Override public ResponseResult deleteUserById(String userId, HttpServletRequest request, HttpServletResponse response) { //检验当前操作的用户是谁 SobUser currentUser = checkSobUser(request, response); if (currentUser == null) { return ResponseResult.ACCOUNT_NOT_LOGIN(); } //判断角色 if (!Constants.User.ROLE_ADMIN.equals(currentUser.getRoles())) { return ResponseResult.PERMISSION_FORBID(); } //可以删除用户了 int result = userDao.deleteUserByState(userId); if (result > 0) { return ResponseResult.SUCCESS("删除成功"); } return ResponseResult.FAILED("用户不存在"); } DAO里的方法 /** * 通过修改用户的状态来删除用户 * * @param userId * @return */ @Modifying @Query(nativeQuery = true, value = "UPDATE `tb_user` SET `state` = '0' WHERE `id` = ?") int deleteUserByState(String userId);

项目实战-领券联盟
一步我们继续去设计相关的类和接口。 源码地址 代码地址: github: https://github.com/TrillGates/TicketUnion 码云 https://gitee.com/
阳光沙滩博客系统-接口权限控制
前面我们都是通过判断当前用户的角色来判断权限的 接下来我们通过注解的形式 开启认证 @EnableGlobalMethodSecurity(prePostEnabled = true) 在applicatoin或者在我们的securityConfig上配置。 创建一个PermissionCheckService @Service("permission") public class PermissionCheckService { @Autowired private IUserService userService; public boolean adminPermission() { // 获取到当前权限所有的角色,进行角色对比即可确定权限 HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse(); //如果token返回false String token = CookieUtils.getCookie(request, Constants.User.COOKIE_TOKE_KEY); if (TextUtils.isEmpty(token)) { return false; } SobUser sobUser = userService.checkSobUser(request, response); if (sobUser == null || TextUtils.isEmpty(sobUser.getRoles())) { return false; } if (Constants.User.ROLE_ADMIN.equals(sobUser.getRoles())) { return true; } return false; } } 权限控制 @PreAuthorize("@permission.adminPermission()") @GetMapping("/list") public ResponseResult listUsers(HttpServletRequest request, HttpServletResponse response, @RequestParam("page") int page, @RequestParam("size") int size) { return userService.listUsers(request, response, page, size); } 403无权限访问处理 添加一个配置 @Configuration public class ErrorPageConfig implements ErrorPageRegistrar { @Override public void registerErrorPages(ErrorPageRegistry registry) { registry.addErrorPages(new ErrorPage(HttpStatus.FORBIDDEN, "/403")); } } 提供一个403的controller-->从code转成Json @GetMapping("/403") @ResponseBody public ResponseResult page403() { ResponseResult failed = new ResponseResult(ResponseState.ACCOUNT_FORBID); return failed; }
阳光沙滩博客系统-修改邮箱地址
用户操作 已经登录了账号 填写新的邮箱地址 填写验证码 提交数据 代码逻辑 检查邮箱是否已经注册过了 判断用户是否已经登录 判断验证码是否正确 修改邮箱/返回内容 接口 /** * 1、必须已经登录了 * 2、新的邮箱没有注册过 *

* 用户的步骤: * 1、已经登录 * 2、输入新的邮箱地址 * 3、获取验证码 type=update * 4、输入验证码 * 5、提交数据 *

* 需要提交的数据 * 1、新的邮箱地址 * 2、验证码 * 3、其他信息我们可以token里获取 * * @return */ @PutMapping("/email") public ResponseResult updateEmail(@RequestParam("email") String email, @RequestParam("verify_code") String verifyCode) { return userService.updateEmail(email, verifyCode); } 实现代码 /** * 更新邮箱地址 * * @param email * @param verifyCode * @return */ @Override public ResponseResult updateEmail(String email, String verifyCode) { //1、确保用户已经登录了 SobUser sobUser = this.checkSobUser(); //没有登录 if (sobUser == null) { return ResponseResult.ACCOUNT_NOT_LOGIN(); } //2、对比验证码,确保新的邮箱地址是属于当前用户的 String redisVerifyCode = (String) redisUtils.get(Constants.User.KEY_EMAIL_CODE_CONTENT + email); if (TextUtils.isEmpty(redisVerifyCode) || !redisVerifyCode.equals(verifyCode)) { return ResponseResult.FAILED("验证码错误"); } //可以修改邮箱 int result = userDao.updateEmailById(email, sobUser.getId()); return result > 0 ? ResponseResult.SUCCESS("邮箱修改成功") : ResponseResult.FAILED("邮箱修改失败"); } DAO的代码 @Modifying @Query(nativeQuery = true, value = "update `tb_user` set `email` = ? where `id` = ?") int updateEmailById(String email, String id);

领券联盟-前端版本-PowerByNuxt.js-给首页分类切换添加loadingUI
给首页分类切换添加loadingUI 解决了跨域问题,我们的数据回来了 当我们直接切换数据的时候,显得有点突兀。 在移动端,当我们去加载的时候,UI上会显示Loading的状态 使用elementUI实现 elementui官网 怎么使用呢? 只要在对应的标签上添加: v-loading="loading" 即可 所以,我们在我们的代码里找到对应的位置添加上即可 整合到代码里
:src="item.pict_url+'_240x240xzq90.jpg_.webp'">
领券购买 原价:34.00
我们这部分内容是渲染商品内容的,当我们去切换分类的时候。 显示为Loading状态 所以添加上 v-loading="loading" 即可,如上代码 而Loading的状态根据我们触发加载数据和结果回来以后改变就okay啦 切换效果 okay,到这里我们就把loading搞定了 详情请看视频视频教程吧。
android开发喜马拉雅项目专题篇
研发人员需要参与的过程有:产品设计阶段的技术预研:这个阶段,产品经理为了达到目的实现功能,需要开发人员的帮助,去验证,或者去研究一些技术功能。编码过程:编码的话这个套不掉啦,这个部分其实还可以细分的呢。
  • 1
  • 2
  • 3
  • 4
  • 5