原创 Android 簡單的自定義View繼承ViewGroup代碼學習分享(一)

註明:該實例取自Android開發藝術探索 在這裏記錄一下自己學習過程中遇到的一些問題與大家分享,也方便自己以後查閱,水平有限,歡迎批評指正。 請看一下運行效果 下面是核心代碼實現,其中的筆記是我測試過程中遇到的一些問題 @Overr

原创 Android 實現簡單的懸浮窗按鈕(二)

這篇主要分析 Window 的工作機制,WindowManager 添加 Window (View) 的主要流程 以下是Android9.0 的源碼 首先看一下 WindowManager.java xref: /frameworks/b

原创 Handler如何通過sendMessage(Message msg)方法將新消息加入當前消息隊列(一)

首先需要先理清 Handler、MessageQueue、Looper 之間的關係。 我們使用Handler的時候(UI主線程)一般是通過以下兩種方法去創建一個Handler實例 1. 最常用的方法:方法1 Handler mHandl

原创 Activity 的 Window 創建主要流程

首先是在 ActivityThread 的 performLaunchActivity() 方法中創建Activity實例,並調用 Activity 的 attach  方法 xref: /frameworks/base/core/jav

原创 簡單的Socket通信實例:實現Android客戶端與PC服務端的簡單通信

今天來寫一個使用Socket通信的小小實例 實現效果:快看動圖   效果說明:當點擊發送時,是先將文本內容發送到本地服務器,之後再從服務器中獲取顯示到TextView中的 PC服務端實現: package com.lollo.serv

原创 Android 實現簡單的懸浮窗按鈕(一)

先來看一下實現效果吧 功能較爲簡單,直接貼出主要實現代碼: public class MainActivity extends AppCompatActivity implements View.OnClickListener,Vie

原创 Android LayoutInflater inflate方法學習

結合Andorid 9.0 的代碼,記錄一下學習過程,大多時候是用的下面這個方法 public View inflate(@LayoutRes int resource, @Nullable ViewGroup root) {

原创 Handler如何通過sendMessage(Message msg)方法將新消息加入當前消息隊列(二)

這裏假設我們是通過Handler 的 sendMessage(Message msg) 來發送消息的 首先進入 sendMessage 方法 public final boolean sendMessage(Message ms

原创 藍橋杯 基礎練習 十六進制轉八進制

//下面的代碼實現部分全部放在了main函數中,看起來有些不清晰 package jinzhizhuanhuan2; /* * * 測試成功。 * 經驗:當修改了代碼中的某個變量的名字是,特別注意:所有涉及到該變量的地方都要修改

原创 杭電HOJ 1004 Let the Balloon Rise

import java.util.Scanner; public class Main{  public static void main(String[]args){  Scanner cin=new Scanner(System.in

原创 杭電HDOJ 1029 Ignatius and the Princess IV

#include<stdio.h> #include<string.h> #define max 1000000 int a[max]; int main() {     int n;     while

原创 HDOJ1005 Number Sequence

#include<stdio.h> int a,b; int f(long n) {  return n>=3?(a*f(n-1)+b*f(n-2))%7:1; } int main() {  long n;  while(scanf(

原创 HDOJ杭電oj 1021Fabonacci Again 的一個愚蠢而又快速的方法

//代碼只有如下幾行 #include<stdio.h> int main() {     int n;     while(scanf("%d",&n)==1)     {         if(n%4==2)printf("yes\n

原创 引入包名後的java編譯命令注意事項!!

package lollo; public class Hello{  public static void main(String[]args){ System.out.println("HelloWorld!!!"); } } //

原创 藍橋杯 基礎練習 十六進制轉十進制 java

package jinzhizhuanhuan; import java.util.Scanner; public class HextoDecimal { public static int compare(char ch){//將A