主頁 > 後端開發 > 如何創建帶有可擴展組標題的串列視圖?

如何創建帶有可擴展組標題的串列視圖?

2022-04-01 23:04:54 後端開發

我想創建一個串列視圖,在每個標題下都有串列,其中標題是可展開或可折疊的。擴展磁貼不會將串列中的其他容器向下推或擴展容器的大小。它溢位

import 'package:flutter/material.dart';
import 'package:configurable_expansion_tile_null_safety/configurable_expansion_tile.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        // This is the theme of your application.
        //
        // Try running your application with "flutter run". You'll see the
        // application has a blue toolbar. Then, without quitting the app, try
        // changing the primarySwatch below to Colors.green and then invoke
        // "hot reload" (press "r" in the console where you ran "flutter run",
        // or simply save your changes to "hot reload" in a Flutter IDE).
        // Notice that the counter didn't reset back to zero; the application
        // is not restarted.
        primarySwatch: Colors.blue,
      ),
      home:  TestAccordianListView(title: 'Accordian ListView'),
    );
  }
}

const MediumBoldStyle =
    TextStyle(fontSize: 15.0, color: Colors.black, fontWeight: FontWeight.bold);

class TestAccordianListView extends StatefulWidget {
  TestAccordianListView({this.title}); 
  String ?title;

  @override
  State<TestAccordianListView> createState() => _TestAccordianListViewState(title);
}

class DataStoreClass{
  String header;
  List<int> items;
  DataStoreClass(this.header,this.items);
}

class _TestAccordianListViewState extends State<TestAccordianListView> {
  _TestAccordianListViewState(this.title);
  String? title;

  List<DataStoreClass> lstData=[
    DataStoreClass("Header1",[1,2,3,4]),
    DataStoreClass("Header2",[5,6,7,8]),
    DataStoreClass("Header3",[9,10,11,12]),
  ];

  @override
  Widget build(BuildContext context) {
    return 
    Scaffold(appBar: AppBar(title:Text(title??"")),body:
    ListView.builder(itemCount: lstData.length,
    itemBuilder: (context,index){
      return 
      Container(
        //height:50,
        width:300,
        //child:Card(
          //  semanticContainer: true,
            //elevation:5,
            //shape: RoundedRectangleBorder(
              //borderRadius: BorderRadius.circular(5.0),
            //),
            //child:
              //Padding(
                padding: EdgeInsets.all(5.0),
                child: Column(
                    crossAxisAlignment: CrossAxisAlignment.start,
                    children: <Widget>[
                        ConfigurableExpansionTile(
                        borderColorStart: Colors.blue,
                        borderColorEnd: Colors.blue,
                        animatedWidgetFollowingHeader: const Icon(
                        Icons.expand_more,
                        color:  Color(0xFF707070),
                        ),
                        headerExpanded: Text(lstData[index].header),
                        header:Container(
                          color: Colors.transparent,
                          child: Center(child: Text(lstData[index].header)) 
                        ),
                        headerBackgroundColorStart: Colors.grey,
                        expandedBackgroundColor: Colors.grey,
                        headerBackgroundColorEnd: Colors.white,
                        children:[
                            ConstrainedBox(
                              constraints: BoxConstraints(maxHeight: 600.0) ,
                              child:ListView.builder(
                              itemCount: lstData[index].items.length,
                              shrinkWrap: true,
                              itemBuilder: (BuildContext context, int index2)
                              {
                                return 
                                  Card(
                                  child: Column(
                                      mainAxisAlignment: MainAxisAlignment.start,
                                      children: [
                                      Text(lstData[index].items[index2].toString(), style: MediumBoldStyle),
                                  ],));
                              })
                            ,)
                        ]),
                    ])
                    //)
                    //)
                    );
      
    },
    )
    )
    ;
  }
}

uj5u.com熱心網友回復:

我使用了一個受約束的框和一個 ConfigurableExpansionTile 為我的 listview.builder 創建了一個框

 import 'package:flutter/material.dart';
import 'package:configurable_expansion_tile_null_safety/configurable_expansion_tile.dart';

class DataStoreClass {
  String header;
  List<String> items;
  DataStoreClass(this.header, this.items);
}

class MachineLearningCase extends StatefulWidget {
  MachineLearningCase({Key key}) : super(key: key);

  @override
  State<MachineLearningCase> createState() => _MachineLearningCaseState();
}

class _MachineLearningCaseState extends State<MachineLearningCase> {
  List<DataStoreClass> lstData = [
    DataStoreClass("Sales - We help integrate Salesloft and Chorus.ai", [
      "Salesloft tracks conversations between the agent and customer through the complete pipeline. Data is accessible by mobile device. The mantra is “Contact the right people with the right message” and add value in every conversation. The customer engagement is tracked and stored on the server. Salesloft tracks opportunity and sales close generating revenue. Opportunity, Sales conversation, and Action step sequence.",
      "chorus.ai is customer centric platform. The software helps the owner understand “What can we learn from our products?” Chorus captures interactions in phone and email using ai. chorus.ai stack includes voice recognition.  chorus analyzes conversations by converting the voice to text and it uses a search engine to find phrases by time. Three reasons to analyze conversation: differentiation the closers, cut down on ramp time, and reducing the 80% of calls lost. chorus.ai decompose conversation into semantics and core building blocks. The data is used to determine risks for the deal and topics and themes from conversations. Performance must be collaborative and friendly. Conversation must be open ended to discover the pain the customer is experiencing.",
      " Gong translates customer calls into text then learns from the text and helps marketers upsell. gong creates work flows. it finds conversations by search phrases.  I can see the possible of using the text conversations between customers and agents to find similarities, summarizations, and classifications of similar customers and by grouping like-customers there will be synergy effects to be capitalized upon."
    ]),
    DataStoreClass("Legal Answers - We help integrate GPT-3", [
      "GPT-3 is good at drawing correlations across a wide dataset. GPT-3 can summarize connections—things that are statistically related, where humans cannot easily see these connections.",
      "GPT-3 is good at producing documents.  GPT-3 can ingest text then predict what text should come next.  GPT-3 can write in a certain voice.",
      "GPT-3 can be hyper-tuned to an organization’s own data.  GPT-3 is a statistical engine.  Usefulness is judged by  GPT-3‘s ability to complete a task.",
      "The legal departments’ common problem is interaction between business units and the legal department.  GPT-3 can provide immediate answers to common questions.  GPT-3 has the ability to create answers and documents.",
    ]),
    DataStoreClass(
        "Mental Health - We build your AI natural language pipeline", [
      "Machines are starting to do a lot of the medical tasks like analyzing X-rays and CAT scans for certain features.  Another area where GPT-3 could apply is mental health.  Mental health is an area the machine could excel in because it remembers the conversational context of previous discussions, and it pulls from a large clinical data source for comparison and contrasting issues.",
      "Using Deep learning a few symptoms, the machine can accurately diagnose a specific disease.  Medicine is very good at classifying disease and given an accurate identification of a disease the deep learning algorithm can accurately classify the disease."
    ]),
    DataStoreClass("Media Search - We integrate Deepgram", [
      "Deepgram, high-speed, speech recognition uses GPU in the cloud.   Deepgram media-to-text will allow all media to be searched to specific points in time when certain text phrases occur."
    ]),
    DataStoreClass("HVAC", [
      "Brainbox AI applies the same technology used in self-driving vehicles to control HVAC systems for large buildings.  The systems adjust configurations automatically to keep the system running at optimium performance.  As a result, there is less need for maintenance checkups because the system does its own monitoring and diagnosis."
    ]),
    DataStoreClass("Legal Research - We integrate Eigen", [
      "AI applied to law is about making our work simpler and speeding up research.  Ross AI legal assistant saves time by searching for data and allowing questions and answers about parts of legal documentation.",
      "Eigen uses Natural Language Processing (NLP) to answer specific questions about legal documentation."
    ]),
    DataStoreClass("Grocery Delivery", [
      "Grocery delivery is becoming a new standard service.  Nuro delivers groceries.  Nuro pizza delivery robot in Texas works as follows:  The vehicle delivers the pizza to the customer’s location, the customer receives a notification the pizza vehicle has arrived, and the customer inputs a pin.  The Nuro doors open, and the customer retrieves his pizza.  It needs a bot to drop the pizza box at the doorstep and ring the bell."
    ]),
    DataStoreClass("Transportation", [
      "Decision-making and motion planning are the primary responsibilities of mobile robots. Taking input from a variety of perception and localization systems, the planner’s job is to figure out where the robot is going and how to get it there safely.  They look for software engineers with experience building real-time motion planning/trajectory generation algorithms for robots in uncertain environments. ",
      "Robo-Bus can auto park and auto charge.  The bus runs a predictable and repeatable route combining maps and GPS coordinates to know speed limits and where roads merge.  Every street is known to the navigation system.  It is a mistake to have a bus driver take over in emergencies.  Robo-Bus must be able to handle emergencies better than a human driver. Human drivers could make a mistake like swerving to avoid a drunk driver.  The Robo-Bus needs to be trained in emergency procedures."
    ]),
    DataStoreClass("Self Driving Cars", [
      "Algoflux specializes in image processing and deep learning.  Image recognition has become a consumable service in the cloud.  These applications run self-driving taxis and personal vehicles.",
      "Vision processing is the best way to navigate because roads change and maps must be used in real time.  Keeping the maps current is not a realistic approach.  A vision processing system must be better than human vision to have the advantage."
    ]),
    DataStoreClass("Warehouse", [
      "Robots can palletize items onto a crate all day long.  It just works.  We need to change our thinking about automation—let it do its thing.",
      "Robot can retrieve items from rakes by climbing the railing moving vertically and horizontally to retrieve the box."
    ]),
    DataStoreClass("Analytics - We can outsource your analytic department", [
      "AI has become an important interface for asking data analysis questions about the data.  Data domains can be quickly queried by AI, and the extracted data combined with other domains of data and summarized, allowing the AI to present a visual or a voice response to questions about key indicators.  The AI can learn the rules for assemblying SQL using a data warehouse star-and-snowflake architecture, much like a human being.  The results can be tested for duplication and a negative result fed back into the model, limiting the poor query combinations.  Likewise, the system can watch existing ERP queries that are highly used, learn from join combinations and then create a reward for finding correct results.",
      "Real time process and concurrent and scalable systems are the way of the future.  Avoid systems that do not offer this capability because of the legacy trap.  Companies capable of real time access process a robust environment to leverage utilization of almost every conceivable business case.",
      "Five years ago, I started thinking about the robot brain automation to getting business accomplished.  I realized normal systems were not loosely coupled and not cohesive.  Meta data was the answer, resulting from high-speed messaging.  Meta data allowed state to move from system to system and get processed.  Message queues and packets offered a way to connect legacy systems to ERPs through messaging.  Why not expand on the idea of meta data?  What if the whole world could transform its work by using messaging and high-speed, concurrent middle layers representing cohesive business logic?  The business would operate like the robotic automation of a self-driving car!  The move to real time makes sense because it removes the complexity and batch processing way of doing things."
    ]),
    DataStoreClass("Safety and Quality Control - We integrate Matroid", [
      "Matroid can reduce effort performing tasks that are mundane but critical to operational safety such as security monitoring, quality control and work flow inspections.  Combined with drones, Matroid can receive real time feeds and send time series alerts to a calendar when certain events occur.",
      "Matroid uses AI to recognize object either from a Javascript web app, uploaded image, or video stream.  Matroid can localize image recognition by using multiple classifiers processing an image frame.  Data APIs provide a robust way to recognize objects and people."
    ]),
    DataStoreClass("Poultry", [
      "Ai and drones can be used to identify chickens that are sick, keeping the group from becoming infected.  People are eating more eggs and chicken from decade to decade.  This trend seems to be on the climb."
    ]),
    DataStoreClass("Customer Service - We integrate Rasa AI", [
      "Rasa AI creates chatbots reducing the number of personnel to answer questions at the same time reducing customer frustration when they’re trying to contact some for help.  When chatbot gains the capability of human comprehension in the content they read, their response will be equivalent to subject matter experts (SME) being asked the same questions over and over.  Chatbots can respond in a natural way.  Translation machines use deep learning to figure out how experts convert messages from one language to another.  The accuracy is better through deep learning.   Deep learning can absorb from expert customer service representatives and respond in an equivalent manner."
    ]),
    DataStoreClass("Miltary Defense Paradox", [
      "Could AI start World War III?  Consider Elon Musk’s claims that AI could start a world war  and at the same time, consider the paradox of thinking machines preventing war.  Musk isn’t considering the essence of how AI works when he says AI will start World War III.  Musk knows AI follows reward and policy conditioning algorithms like a dog performing tricks for a treat.  Therefore, it is not unreasonable that a machine statistically watching enemy force build up could plan a first strike action in order to maximize its rewards.  AI does not need to understand the cost of its actions in terms of human suffering.  AI does not have emotion or empathy.  It only needs to think if its action to maximize returns or rewards.  AI calculates best probable outcomes to its goals.",
      "AI can start a nuclear war, and AI can restrain action from starting a nuclear war.  AI restraining a nuclear war is based on ethical and moral weightings that evaluate each action in terms of probable loss of life.  If the moral and ethical weightings do not justify the action, the AI will decide not to act.  Therefore, not to take unilateral action could be a more perfect decision, resulting in less loss of life.",
      "During a nuclear crisis, information overload and weighting loss of life have already been stimulated by AI.  The data has been analyzed by data scientists.  Machines respond faster during a crisis than can humans.  Machines handle, absorb and process large amounts of data quickly, make decisions when shortage of time matters, and they follow restraining rules on uncertainty.  Machines and data scientists have already reviewed most conflict scenarios, and the results have been worked out by the numbers.",
      "AI could create a golden era of peace.  AI could predict where war was probable to break out and then squash the rebelling forces before they engage.  AI could predict where famine, starvation and drought were coming.  It could predict where rebel force build up was likely and begin delivering food, aid and desalinization remote facilities to these areas.  AI could generate an era of peace and stability unlike the world has seen.  This is the paradox."
    ])
  ];

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(title: Text("Machine Learning Integration")),
        body: ListView.builder(
          itemCount: lstData.length,
          itemBuilder: (context, index) {
            return Container(
                width: 300,
                padding: EdgeInsets.all(5.0),
                child: Column(
                    crossAxisAlignment: CrossAxisAlignment.start,
                    children: [
                      ConfigurableExpansionTile(
                          header: Text(lstData[index].header,
                              style: TextStyle(fontSize: 30)),
                          headerExpanded: Text(lstData[index].header,
                              style: TextStyle(fontSize: 30)),
                          animatedWidgetFollowingHeader: const Icon(
                            Icons.expand_more,
                            color: Color(0xFF707070),
                          ),
                          headerBackgroundColorStart: Colors.green[200],
                          headerBackgroundColorEnd: Colors.grey,
                          children: [
                            ConstrainedBox(
                                constraints: BoxConstraints(maxHeight: 200),
                                child: ListView.builder(
                                    itemCount: lstData[index].items.length,
                                    itemBuilder: (context, index2) {
                                      return Column(
                                          mainAxisAlignment:
                                              MainAxisAlignment.start,
                                          crossAxisAlignment:
                                              CrossAxisAlignment.start,
                                          children: [
                                            Container(
                                                padding: EdgeInsets.all(20),
                                                child: Text(
                                                    lstData[index]
                                                        .items[index2],
                                                    style: TextStyle(
                                                        fontSize: 20))),
                                            SizedBox(
                                              height: 10,
                                            )
                                          ]);
                                    }))
                          ])
                    ]));
          },
        ));
  }
}

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/454293.html

標籤:列表显示 列表生成器 可配置扩展磁贴

上一篇:在顫動中使用微光時如何在串列視圖中顯示空狀態

下一篇:如何在模板Haskell中“編碼”這個簡單的運算式?

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 【C++】Microsoft C++、C 和匯編程式檔案

    ......

    uj5u.com 2020-09-10 00:57:23 more
  • 例外宣告

    相比于斷言適用于排除邏輯上不可能存在的狀態,例外通常是用于邏輯上可能發生的錯誤。 例外宣告 Item 1:當函式不可能拋出例外或不能接受拋出例外時,使用noexcept 理由 如果不打算拋出例外的話,程式就會認為無法處理這種錯誤,并且應當盡早終止,如此可以有效地阻止例外的傳播與擴散。 示例 //不可 ......

    uj5u.com 2020-09-10 00:57:27 more
  • Codeforces 1400E Clear the Multiset(貪心 + 分治)

    鏈接:https://codeforces.com/problemset/problem/1400/E 來源:Codeforces 思路:給你一個陣列,現在你可以進行兩種操作,操作1:將一段沒有 0 的區間進行減一的操作,操作2:將 i 位置上的元素歸零。最終問:將這個陣列的全部元素歸零后操作的最少 ......

    uj5u.com 2020-09-10 00:57:30 more
  • UVA11610 【Reverse Prime】

    本人看到此題沒有翻譯,就附帶了一個自己的翻譯版本 思考 這一題,它的第一個要求是找出所有 $7$ 位反向質數及其質因數的個數。 我們應該需要質數篩篩選1~$10^{7}$的所有數,這里就不慢慢介紹了。但是,重讀題,我們突然發現反向質數都是 $7$ 位,而將它反過來后的數字卻是 $6$ 位數,這就說明 ......

    uj5u.com 2020-09-10 00:57:36 more
  • 統計區間素數數量

    1 #pragma GCC optimize(2) 2 #include <bits/stdc++.h> 3 using namespace std; 4 bool isprime[1000000010]; 5 vector<int> prime; 6 inline int getlist(int ......

    uj5u.com 2020-09-10 00:57:47 more
  • C/C++編程筆記:C++中的 const 變數詳解,教你正確認識const用法

    1、C中的const 1、區域const變數存放在堆疊區中,會分配記憶體(也就是說可以通過地址間接修改變數的值)。測驗代碼如下: 運行結果: 2、全域const變數存放在只讀資料段(不能通過地址修改,會發生寫入錯誤), 默認為外部聯編,可以給其他源檔案使用(需要用extern關鍵字修飾) 運行結果: ......

    uj5u.com 2020-09-10 00:58:04 more
  • 【C++犯錯記錄】VS2019 MFC添加資源不懂如何修改資源宏ID

    1. 首先在資源視圖中,添加資源 2. 點擊新添加的資源,復制自動生成的ID 3. 在解決方案資源管理器中找到Resource.h檔案,編輯,使用整個專案搜索和替換的方式快速替換 宏宣告 4. Ctrl+Shift+F 全域搜索,點擊查找全部,然后逐個替換 5. 為什么使用搜索替換而不使用屬性視窗直 ......

    uj5u.com 2020-09-10 00:59:11 more
  • 【C++犯錯記錄】VS2019 MFC不懂的批量添加資源

    1. 打開資源頭檔案Resource.h,在其中預先定義好宏 ID(不清楚其實ID值應該設定多少,可以先新建一個相同的資源項,再在這個資源的ID值的基礎上遞增即可) 2. 在資源視圖中選中專案資源,按F7編輯資源檔案,按 ID 型別 相對路徑的形式添加 資源。(別忘了先把檔案拷貝到專案中的res檔案 ......

    uj5u.com 2020-09-10 01:00:19 more
  • C/C++編程筆記:關于C++的參考型別,專供新手入門使用

    今天要講的是C++中我最喜歡的一個用法——參考,也叫別名。 參考就是給一個變數名取一個變數名,方便我們間接地使用這個變數。我們可以給一個變數創建N個參考,這N + 1個變數共享了同一塊記憶體區域。(參考型別的變數會占用記憶體空間,占用的記憶體空間的大小和指標型別的大小是相同的。雖然參考是一個物件的別名,但 ......

    uj5u.com 2020-09-10 01:00:22 more
  • 【C/C++編程筆記】從頭開始學習C ++:初學者完整指南

    眾所周知,C ++的學習曲線陡峭,但是花時間學習這種語言將為您的職業帶來奇跡,并使您與其他開發人員區分開。您會更輕松地學習新語言,形成真正的解決問題的技能,并在編程的基礎上打下堅實的基礎。 C ++將幫助您養成良好的編程習慣(即清晰一致的編碼風格,在撰寫代碼時注釋代碼,并限制類內部的可見性),并且由 ......

    uj5u.com 2020-09-10 01:00:41 more
最新发布
  • Rust中的智能指標:Box<T> Rc<T> Arc<T> Cell<T> RefCell<T> Weak

    Rust中的智能指標是什么 智能指標(smart pointers)是一類資料結構,是擁有資料所有權和額外功能的指標。是指標的進一步發展 指標(pointer)是一個包含記憶體地址的變數的通用概念。這個地址參考,或 ” 指向”(points at)一些其 他資料 。參考以 & 符號為標志并借用了他們所 ......

    uj5u.com 2023-04-20 07:24:10 more
  • Java的值傳遞和參考傳遞

    值傳遞不會改變本身,參考傳遞(如果傳遞的值需要實體化到堆里)如果發生修改了會改變本身。 1.基本資料型別都是值傳遞 package com.example.basic; public class Test { public static void main(String[] args) { int ......

    uj5u.com 2023-04-20 07:24:04 more
  • [2]SpinalHDL教程——Scala簡單入門

    第一個 Scala 程式 shell里面輸入 $ scala scala> 1 + 1 res0: Int = 2 scala> println("Hello World!") Hello World! 檔案形式 object HelloWorld { /* 這是我的第一個 Scala 程式 * 以 ......

    uj5u.com 2023-04-20 07:23:58 more
  • 理解函式指標和回呼函式

    理解 函式指標 指向函式的指標。比如: 理解函式指標的偽代碼 void (*p)(int type, char *data); // 定義一個函式指標p void func(int type, char *data); // 宣告一個函式func p = func; // 將指標p指向函式func ......

    uj5u.com 2023-04-20 07:23:52 more
  • Django筆記二十五之資料庫函式之日期函式

    本文首發于公眾號:Hunter后端 原文鏈接:Django筆記二十五之資料庫函式之日期函式 日期函式主要介紹兩個大類,Extract() 和 Trunc() Extract() 函式作用是提取日期,比如我們可以提取一個日期欄位的年份,月份,日等資料 Trunc() 的作用則是截取,比如 2022-0 ......

    uj5u.com 2023-04-20 07:23:45 more
  • 一天吃透JVM面試八股文

    什么是JVM? JVM,全稱Java Virtual Machine(Java虛擬機),是通過在實際的計算機上仿真模擬各種計算機功能來實作的。由一套位元組碼指令集、一組暫存器、一個堆疊、一個垃圾回收堆和一個存盤方法域等組成。JVM屏蔽了與作業系統平臺相關的資訊,使得Java程式只需要生成在Java虛擬機 ......

    uj5u.com 2023-04-20 07:23:31 more
  • 使用Java接入小程式訂閱訊息!

    更新完微信服務號的模板訊息之后,我又趕緊把微信小程式的訂閱訊息給實作了!之前我一直以為微信小程式也是要企業才能申請,沒想到小程式個人就能申請。 訊息推送平臺🔥推送下發【郵件】【短信】【微信服務號】【微信小程式】【企業微信】【釘釘】等訊息型別。 https://gitee.com/zhongfuch ......

    uj5u.com 2023-04-20 07:22:59 more
  • java -- 緩沖流、轉換流、序列化流

    緩沖流 緩沖流, 也叫高效流, 按照資料型別分類: 位元組緩沖流:BufferedInputStream,BufferedOutputStream 字符緩沖流:BufferedReader,BufferedWriter 緩沖流的基本原理,是在創建流物件時,會創建一個內置的默認大小的緩沖區陣列,通過緩沖 ......

    uj5u.com 2023-04-20 07:22:49 more
  • Java-SpringBoot-Range請求頭設定實作視頻分段傳輸

    老實說,人太懶了,現在基本都不喜歡寫筆記了,但是網上有關Range請求頭的文章都太水了 下面是抄的一段StackOverflow的代碼...自己大修改過的,寫的注釋挺全的,應該直接看得懂,就不解釋了 寫的不好...只是希望能給視頻網站開發的新手一點點幫助吧. 業務場景:視頻分段傳輸、視頻多段傳輸(理 ......

    uj5u.com 2023-04-20 07:22:42 more
  • Windows 10開發教程_編程入門自學教程_菜鳥教程-免費教程分享

    教程簡介 Windows 10開發入門教程 - 從簡單的步驟了解Windows 10開發,從基本到高級概念,包括簡介,UWP,第一個應用程式,商店,XAML控制元件,資料系結,XAML性能,自適應設計,自適應UI,自適應代碼,檔案管理,SQLite資料庫,應用程式到應用程式通信,應用程式本地化,應用程式 ......

    uj5u.com 2023-04-20 07:22:35 more