国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Android Studio】第三方庫 圖表(MPAndroidChart)使用

這篇具有很好參考價(jià)值的文章主要介紹了【Android Studio】第三方庫 圖表(MPAndroidChart)使用。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1、添加依賴

項(xiàng)目目錄->app->build.gradle

dependencies {
	implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
}

【Android Studio】第三方庫 圖表(MPAndroidChart)使用

項(xiàng)目目錄->app->setting.gradle

dependencyResolutionManagement {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

【Android Studio】第三方庫 圖表(MPAndroidChart)使用

2、Chart 類

? 該類是圖表的控件,類似于按鍵、圖片,是從 xml 文件中通過 id 獲取到的。

獲取/創(chuàng)建

xxxChart chart = (xxxChart) findViewById(R.id.chart);

常用方法

方法名 描述
chart.setDrawBorders(boolean) 是否顯示圖表邊界,true:顯示,默認(rèn) false
chart.setScaleEnabled(boolean) 是否使能縮放,true:使能,默認(rèn) false
chart.setScaleXEnabled(boolean) 是否使能 X 軸方向的縮放,true:使能,默認(rèn) false
chart.setScaleYEnabled(boolean) 是否使能 Y 軸方向的縮放,true:使能,默認(rèn) false
chart.setExtraRightOffset(float) 設(shè)置圖表右邊邊界的偏移(解決 X 軸顯示不全問題)
chart.setExtraLeftOffset(float) 設(shè)置圖表左邊邊界的偏移(解決 X 軸顯示不全問題)
chart.setExtraBottomOffset(float) 設(shè)置圖表底邊邊界的偏移
chart.setExtraTopOffset(float) 設(shè)置圖表頂邊邊界的偏移
chart.setOnChartValueSelectedListener
(OnChartValueSelectedListener)
監(jiān)聽點(diǎn)擊圖表中的數(shù)據(jù)事件(詳見 10、OnChartValueSelectedListener 接口))
chart.setData(-Data) 往圖表插入一組數(shù)據(jù)(詳見 3、DataSet 類))
chart.getXAxis() 獲取圖表的 X 軸
chart.setVisibleXRangeMaximum(float) 設(shè)置當(dāng)前圖表中最多在 X 軸坐標(biāo)線上顯示刻度線的總量
chart.getAxisLeft() 獲取圖表左邊的 Y 軸
chart.getAxisRight() 獲取圖表右邊的 Y 軸
chart.getLegend() 獲取圖表的圖例
chart.setDescription() 設(shè)置圖表標(biāo)題
chart.animateY(int) 設(shè)置播放 Y 軸方向的動(dòng)畫時(shí)間(毫秒)
chart.animateX(int) 設(shè)置播放 X 軸方向的動(dòng)畫時(shí)間(毫秒)
chart.animateXY(int) 設(shè)置播放 XY 軸方向的動(dòng)畫時(shí)間(毫秒)
chart.notifyDataSetChanged() 讓圖表知道依賴的數(shù)據(jù)發(fā)生變化時(shí)調(diào)用,調(diào)用后圖表會(huì)重新計(jì)算,在使用動(dòng)態(tài)數(shù)據(jù)時(shí)很有用
chart.invalidate() 這個(gè)方法刷新圖表將會(huì)重新繪制,更改圖表后想要生效必須調(diào)用

3、DataSet 類

作用

? 設(shè)置展現(xiàn)在圖表上的一組數(shù)據(jù)的一些表現(xiàn)形式。比如說設(shè)置折線的顏色、粗細(xì)等。

構(gòu)造函數(shù)

xxxDataSet dataSet = new xxxDataSet(List<Entry> yVals, String label);
  • yVals:需要進(jìn)行展示的一組數(shù)據(jù)

  • label:該組數(shù)據(jù)的名字

yVals list 數(shù)組由來:

float[] data;

// 填充數(shù)據(jù)
for(int i = 0; i < data.length; i++) {
    // 兩個(gè)數(shù)字對(duì)應(yīng)的分別是 X軸 Y軸
    barList.add(new BarEntry(i, data[i]));
}

共用方法

方法名 描述
dataSet.setColor(int) 設(shè)置折線/柱子的顏色,顏色可以通過 Color.parseColor(“#xxxxxx”) 得到
dataSet.setValueTextSize(float) 設(shè)置折線點(diǎn)/柱子上的字體大小
dataSet.setValueFormatter(IValueFormatter) 對(duì)折線點(diǎn)/柱子上的數(shù)據(jù)重新進(jìn)行顯示,可以實(shí)現(xiàn)加單位(詳見 8、IValueFormatter 接口))
dataSet.setHighlightEnabled(boolean) 選中數(shù)據(jù)是否高亮顯示,true:高亮顯示,默認(rèn) true
dataSet.setHighLightColor(int) 設(shè)置高亮顏色(如果不高亮顯示,該設(shè)置無效)
dataSet.addEntry(Entry) 向 DataSet 中添加一個(gè) Entry 對(duì)象(數(shù)據(jù))
dataSet.removeFirst() 刪除 DataSet 的第一個(gè) Entry 對(duì)象(數(shù)據(jù))
dataSet.removeLast() 刪除 DataSet 的最后一個(gè) Entry 對(duì)象(數(shù)據(jù))
dataSet.removeEntry(Entry)
dataSet.removeEntry(int xIndex)
刪除指定的一個(gè) Entry 對(duì)象(數(shù)據(jù))

3.1 LineDataSet

方法名 描述
lineDataSet.setLineWidth(float) 設(shè)置折線的寬度
lineDataSet.setCircleColor(int) 設(shè)置折線點(diǎn)的顏色,顏色可以通過Color.parseColor(“#xxxxxx”) 得到
lineDataSet.setCircleRadius(float) 設(shè)置折線點(diǎn)的半徑
lineDataSet.setDrawCircleHole(boolean) 是否將折線點(diǎn)畫成空心圓,true:畫成空心圓,默認(rèn) false
lineDataSet.setCircleHoleRadius(float) 設(shè)置折線點(diǎn)空心圓的圓心半徑(如果沒有設(shè)置成空心圓,該設(shè)置無效)
lineDataSet.setCircleColorHole(int) 設(shè)置折線點(diǎn)空心圓內(nèi)部的顏色(如果沒有設(shè)置成空心圓,該設(shè)置無效)
lineDataSet.setHighlightLineWidth(float) 設(shè)置高亮指示線寬度(如果不高亮顯示,該設(shè)置無效)

3.2 BarDataSet

方法名 描述
barDataSet.setBarBorderColor(int) 設(shè)置柱子邊框顏色,顏色可以通過
Color.parseColor(“#xxxxxx”) 得到
barDataSet.setBarBorderWidth(float) 設(shè)置柱子邊框厚度
barDataSet.setHighLightAlpha(int) 設(shè)置柱子高亮顯示時(shí)的顏色透明度,0:完全透明,
255:完全不透明(如果不高亮顯示,該設(shè)置無效)

4、Data 類

? ChartData 類是所有圖表數(shù)據(jù)類的基類

public class LineData extends ChartData { ...

作用

? **將一個(gè)或若干個(gè) -DataSet 數(shù)據(jù)類做進(jìn)一步的包裝,由 -Data 類進(jìn)行管理。**并通過它傳遞給 -Chart 類進(jìn)行顯示。

構(gòu)造方法

xxxData data = new xxxData(IBarDataSet DataSet);
  • DataSet:前面提到的 xxxDataSet 數(shù)據(jù)類。

共用方法

方法名 描述
data.addDataSet(DataSet) 添加一組新的數(shù)據(jù)(動(dòng)態(tài)添加數(shù)據(jù)的時(shí)候使用)(詳見 3、DataSet 類))
data.addEntry(Entry e, int dataSetIndex) 將 Entry 對(duì)象添加到內(nèi)部的某一個(gè) DataSet(由 dataSetIndex 決定)中去
data.removeDataSet(DataSet)
data.removeDataSet(**int **index)
刪除指定的一個(gè) DataSet
data.setValueFormatter(IValueFormatter) 對(duì)折線點(diǎn)/柱子上的數(shù)據(jù)重新進(jìn)行顯示,可以實(shí)現(xiàn)加單位(詳見 8、IValueFormatter 接口))
data.setDrawValues(boolean) 是否顯示各個(gè)數(shù)據(jù)的值,false:不顯示,默認(rèn) true

4.1 BarChart

方法名 描述
barChart.setBarWidth(float) 設(shè)置柱子寬度,一般不超過 1 就可以了

5、AxisBase 類

作用

? 該類是 Chart 圖表的 X/Y 軸的基類。

共用方法

方法名 描述
Axis.setTextSize(float) 設(shè)置坐標(biāo)軸的字體大小
Axis.setAxisLineColor(int) 設(shè)置坐標(biāo)軸的字體顏色,顏色可以通過
Color.parseColor(“#xxxxxx”) 得到
Axis.setAxisLineWidth(float) 設(shè)置坐標(biāo)軸的粗細(xì)
Axis.setValueFormatter(IAxisValueFormatter) 重新格式化坐標(biāo)軸標(biāo)簽(值)(詳見 9、IAxisValueFormatter 接口))
Axis.setAxisMinimum(float) Axis.setAxisMaximum(float) 設(shè)置坐標(biāo)軸顯示的區(qū)間
Axis.setGranularity(float) 設(shè)置坐標(biāo)軸坐標(biāo)之間的最小間隔
Axis.setLabelCount(int) 設(shè)置坐標(biāo)軸總共有多少個(gè)值
Axis.addLimitLine(LimitLine) 向坐標(biāo)軸上添加一條新的限制線(詳見 6、LimitLine 類))
Axis.removeLimitLine(LimitLine) 從坐標(biāo)軸上移除一條限制線(詳見 6、LimitLine 類))
Axis.setDrawLimitLinesBehindData(boolean) 設(shè)置限制線和數(shù)據(jù)標(biāo)簽的圖層順序,true:限制線將繪制在數(shù)據(jù)的后面,否則繪制在前面,默認(rèn)為 false
Axis.setDrawGridLines(boolean) 是否繪制坐標(biāo)軸的網(wǎng)格線,false:不繪制,默認(rèn) true
Axis.setGridColor(int) 設(shè)置坐標(biāo)軸的網(wǎng)格線的顏色,顏色可以通過
Color.parseColor(“#xxxxxx”) 得到

5.1 XAxis

作用

? 該類是 Chart 圖表的 X 軸,由 chart.getXAxis() 獲取。

常用方法

方法名 描述
xAxis.setPosition(XAxis.XAxisPosition.xxx) 設(shè)置 X 軸的位置??扇。築OTTOM、BOTH_SIDED BOTTOM_INSIDE、TOP、TOP_INSIDE
xAxis.setLabelCount(int) 設(shè)置 X 軸總共有多少個(gè)值,一般該方法后面跟著
chart.setVisibleXRangeMaximum(float)
xAxis.setLabelRotationAngle(float) 設(shè)置 X 軸標(biāo)簽數(shù)據(jù)旋轉(zhuǎn)的角度

5.2 YAxis

作用

? 該類是 Chart 圖表的 Y 軸,但 Chart 中有左右兩個(gè) Y 軸,分別由 chart.getAxisLeft()、chart.getAxisRight() 獲取。

常用方法

方法名 描述
yAxis.setEnabled(boolean) 設(shè)置該 Y 軸是否顯示,false:不顯示,默認(rèn)顯示
yAxis.setInverted(boolean) 設(shè)置是否倒置高低值,true:大值將會(huì)在底部出現(xiàn),小值將會(huì)在頂部出現(xiàn),默認(rèn) false

6、LimitLine 類

作用

? 該類是 Chart 的限制線,作用是呈現(xiàn)一些特殊的信息,像邊界、約束等。

構(gòu)造函數(shù)

LimitLine limitLine = new LimitLine(float limit, String label);
  • limit:這條線應(yīng)該出現(xiàn)在坐標(biāo)軸上的位置(值)

  • label:該限制線的名字

常用方法

方法名 描述
limitLine.setLabelPosition(LimitLine.LimitLabelPosition.xxx) 設(shè)置限制線描述字符串的位置,可以取值:LEFT_TOP, LEFT_BOTTOM, RIGHT_TOP, RIGHT_BOTTOM
limitLine.setLineWidth(float) 設(shè)置限制線的寬度
limitLine.setTextSize(float) 設(shè)置限制線描述字符串的大小
limitLine.setTextColor(int) 設(shè)置限制線描述字符串的顏色,顏色可以通過Color.parseColor(“#xxxxxx”) 得到
limitLine.setLineColor(int) 設(shè)置限制線的顏色,顏色可以通過
Color.parseColor(“#xxxxxx”) 得到

7、Description 類

作用

? 該類是一個(gè) Chart 類的標(biāo)題。

構(gòu)造函數(shù)

Description description = new Description();

常用方法

方法名 描述
description.setText(String) 設(shè)置圖表標(biāo)題名
description.setTextSize(float) 設(shè)置圖表標(biāo)題大小
description.setPosition(float x, float y) 設(shè)置圖表標(biāo)題位置

8、IValueFormatter 接口

作用

? 對(duì)數(shù)據(jù)組 DataSet 中的數(shù)據(jù)標(biāo)簽進(jìn)行重新格式化。

例子

DataSet.setValueFormatter(new IValueFormatter() {
    @Override
    public String getFormattedValue(float v, Entry entry, int i, ViewPortHandler viewPortHandler) {
        if(entry.getY() == v){
            return v + "h";
        }
        return "";
    }
});
  • v:要格式化的值
  • enry:值所屬的條目

9、IAxisValueFormatter 接口

作用

? 對(duì)坐標(biāo)軸的標(biāo)簽進(jìn)行重新格式化。

例子

String[] data;
    
Axis.setValueFormatter(new IAxisValueFormatter() {
    @Override
    public String getFormattedValue(float value, AxisBase axis) {
        if((int)value >= 0 && (int)value < data.length) {
            return data[(int) value];
        }
        return "";
    }
});
  • value:要格式化的值

10、OnChartValueSelectedListener 接口

作用

? 監(jiān)聽是否點(diǎn)擊了數(shù)據(jù)組中的數(shù)據(jù)。可以在該監(jiān)聽函數(shù)中實(shí)現(xiàn)點(diǎn)擊不同的數(shù)據(jù)在另一個(gè) Chart 中展現(xiàn)對(duì)應(yīng)的不同的數(shù)據(jù)。

例子

chart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {
    // 點(diǎn)擊數(shù)據(jù)后的回調(diào)函數(shù)
    @Override
    public void onValueSelected(Entry entry, Highlight highlight) {
        int iEntry = (int) entry.getX();
    }
	
    // 取消點(diǎn)擊數(shù)據(jù)后的回調(diào)函數(shù)
    @Override
    public void onNothingSelected() {

    }
});

11、例子

【Android Studio】第三方庫 圖表(MPAndroidChart)使用文章來源地址http://www.zghlxwxcb.cn/news/detail-456659.html

    <com.github.mikephil.charting.charts.BarChart
        android:id="@+id/bar"
        android:layout_marginTop="50dp"
        android:layout_width="380dp"
        android:layout_height="258dp"
        android:layout_gravity="center" >
    </com.github.mikephil.charting.charts.BarChart>
// x軸
String[] day = {"1-1", "1-2", "1-3", "1-4", "1-5", "1-6", "1-7"};
// x軸對(duì)應(yīng)的數(shù)據(jù)
float[] time = {(float)6.8, (float)5.4, (float)2.9, (float)8.2, (float)4.7, (float)6.1, (float)9.2};
// 實(shí)例化一個(gè)List用來存儲(chǔ)數(shù)據(jù)
List<BarEntry> barList = new ArrayList<>();


/*柱狀圖*/
mBarChart = (BarChart) findViewById(R.id.bar);
// 是否使能縮放
mBarChart.setScaleEnabled(false);
mBarChart.setExtraLeftOffset(10);
mBarChart.setExtraTopOffset(50);
// 動(dòng)畫
mBarChart.animateY(1000);

/** 柱子 **/
// 填充數(shù)據(jù)
for(int i = 0; i < time.length; i++) {
    // 兩個(gè)數(shù)字對(duì)應(yīng)的分別是 X軸 Y軸
    barList.add(new BarEntry(i, time[i]));
}
// 設(shè)置該組數(shù)據(jù)名稱
BarDataSet barDataSet = new BarDataSet(barList,"時(shí)長");
// 設(shè)置柱子顏色
barDataSet.setColors(Color.parseColor("#D2B48C"));
// 柱子邊框顏色
barDataSet.setBarBorderColor(Color.parseColor("#CD853F"));
// 柱子邊框厚度
barDataSet.setBarBorderWidth(2);
// 設(shè)置柱子高亮顯示時(shí)的顏色透明度,當(dāng)不高亮顯示時(shí),該設(shè)置無效
barDataSet.setHighLightAlpha(100);
// 設(shè)置柱子上字體大小
barDataSet.setValueTextSize(11);
// 定義柱子上的數(shù)據(jù)顯示,可以實(shí)現(xiàn)加單位
barDataSet.setValueFormatter(new IValueFormatter() {
    @Override
    public String getFormattedValue(float v, Entry entry, int i, ViewPortHandler viewPortHandler) {
        if(entry.getY() == v){
            return v + "h";
        }
        return "";
    }
});
BarData barData = new BarData(barDataSet);
// 設(shè)置柱子寬度
barData.setBarWidth(0.7f);
mBarChart.setData(barData);

/** X軸 **/
XAxis xAxis = mBarChart.getXAxis();
// 設(shè)置X軸的位置  BOTTOM  BOTH_SIDED  BOTTOM_INSIDE  TOP  TOP_INSIDE
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
// 設(shè)置X軸坐標(biāo)之間的最小間隔
xAxis.setGranularity(1);
// 設(shè)置X軸的刻度數(shù)量
xAxis.setLabelCount(day.length);
// 設(shè)置當(dāng)前圖表中最多在x軸坐標(biāo)線上顯示刻度線的總量
mBarChart.setVisibleXRangeMaximum(8);
// 設(shè)置X軸的字體大小
xAxis.setTextSize(11);
// 設(shè)置X軸的字體顏色
xAxis.setAxisLineColor(Color.BLACK);
// 設(shè)置X軸的粗細(xì)
xAxis.setAxisLineWidth(1);
// 是否繪制X軸的網(wǎng)格線
xAxis.setDrawGridLines(false);
// 給X軸設(shè)置新的標(biāo)簽(值)
xAxis.setValueFormatter(new IAxisValueFormatter() {
    @Override
    public String getFormattedValue(float value, AxisBase axis) {
        if((int)value >= 0 && (int)value < day.length) {
            return day[(int)value];
        }
        return "";
    }
});

/** Y軸 **/
YAxis leftYAxis = mBarChart.getAxisLeft();
YAxis rightYAxis = mBarChart.getAxisRight();
// 設(shè)置某一個(gè)Y軸是否顯示
rightYAxis.setEnabled(false);
// 設(shè)置Y軸顯示的區(qū)間
leftYAxis.setAxisMinimum(0);
leftYAxis.setAxisMaximum(10);
// 設(shè)置Y軸值之間的間隔
leftYAxis.setGranularity(2);
// 設(shè)置Y軸總共有多少個(gè)值
leftYAxis.setLabelCount(6);
// 設(shè)置Y軸字體大小
leftYAxis.setTextSize(11);
// 設(shè)置Y軸字體顏色
leftYAxis.setAxisLineColor(Color.BLACK);
// 設(shè)置Y軸的粗細(xì)
leftYAxis.setAxisLineWidth(1f);
// 給Y軸設(shè)置新的標(biāo)簽(值)
leftYAxis.setValueFormatter(new IAxisValueFormatter() {
    @Override
    public String getFormattedValue(float v, AxisBase axisBase) {
        return (int)v + "h";
    }
});

/** 限制線 **/
// 創(chuàng)建一個(gè)新的限制線
LimitLine limitLine = new LimitLine(8,"限制線");
// 設(shè)置限制線的寬度
limitLine.setLineWidth(2);
limitLine.setTextSize(11);
limitLine.setTextColor(Color.parseColor("#B22222"));
limitLine.setLineColor(Color.RED);
leftYAxis.addLimitLine(limitLine);

/** 圖例 **/
Legend legend = mBarChart.getLegend();
// 設(shè)置圖例的文本顏色
legend.setTextColor(Color.BLACK);
legend.setTextSize(12);

/** 圖表標(biāo)題 **/
Description description = new Description();
description.setText("圖表標(biāo)題");
description.setTextSize(17);
WindowManager windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
int w = windowManager.getDefaultDisplay().getWidth();
description.setPosition(w / 2 + 100, 90);
mBarChart.setDescription(description);

到了這里,關(guān)于【Android Studio】第三方庫 圖表(MPAndroidChart)使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uniapp小程序使用原生echarts非第三方封裝 小程序使用echarts 圖表 可視化

    uniapp小程序使用原生echarts非第三方封裝 小程序使用echarts 圖表 可視化

    前言:之前小程序做的圖表,當(dāng)時(shí)沒找到太多使用echarts的教程,大多都是二次封裝的。連uniapp都是推薦別人二次封裝的圖表,然后用了之后呢,發(fā)現(xiàn)不是自己想要的效果(也許是自己對(duì)別人二次封裝的代碼不夠熟悉吧 ),然后干脆摸索下uniapp引入echarts圖表(非他人封裝的)

    2024年02月09日
    瀏覽(34)
  • 使用Visual Studio打造強(qiáng)大的程序,從添加第三方庫開始

    使用Visual Studio打造強(qiáng)大的程序,從添加第三方庫開始

    ??一個(gè)熱愛分享高性能服務(wù)器后臺(tái)開發(fā)知識(shí)的博主,目標(biāo)是通過理論與代碼實(shí)踐的結(jié)合,讓世界上看似難以掌握的技術(shù)變得易于理解與掌握。技能涵蓋了多個(gè)領(lǐng)域,包括C/C++、Linux、Nginx、MySQL、Redis、fastdfs、kafka、Docker、TCP/IP、協(xié)程、DPDK等。 ?? ??? CSDN實(shí)力新星,CSDN博客專

    2024年02月16日
    瀏覽(31)
  • Android 源碼修改,使第三方應(yīng)用可以直接使用su命令

    ? ? 在android原生系統(tǒng)中,只有root權(quán)限和shell權(quán)限下才可以使用su命令,雖然在userdebug模式下編譯的系統(tǒng)鏡像有自帶的su文件,但是第三方應(yīng)用卻無法使用。于是在這種場景下,有兩種方式可以實(shí)現(xiàn)第三方應(yīng)用使用su命令。 ? ? 1.修改原來的su相關(guān)的源碼(所有的應(yīng)用都可以使用

    2024年02月09日
    瀏覽(111)
  • Android 分別使用Java和Kotlin給Textview設(shè)置第三方字體、APP全局字體、 Android X字體設(shè)置

    Android 分別使用Java和Kotlin給Textview設(shè)置第三方字體、APP全局字體、 Android X字體設(shè)置

    本文介紹Android實(shí)現(xiàn)全局設(shè)置自定義字體和局部設(shè)置自定義字體即單個(gè)TextView設(shè)置字體,同時(shí)也提供了一些優(yōu)秀的三方字體框架,基本可以滿足開發(fā)者對(duì)字體設(shè)置的全部要求。 使用自定義字體前后效果圖 首先需要了解Android之a(chǎn)ssets 簡而言之,你的圖片、svg文件放在工程的res/d

    2024年02月07日
    瀏覽(19)
  • android使用fat-aar打包,本地aar和第三方依賴庫以及遇到的問題

    android使用fat-aar打包,本地aar和第三方依賴庫以及遇到的問題

    需要把有個(gè)模塊打包成aar,直接打包的話,模塊中引用的jar、aar、第三方依賴庫都不會(huì)打包進(jìn)去。直接生成的aar缺少內(nèi)部引用的以來,所以要用到fat-aar來把模塊中用到的依賴也打包進(jìn)去。 1.首先在項(xiàng)目的gradle加入 2.在repositories加入 3. 在需要打包aar的build.gradle中加入 4.第三方

    2024年02月15日
    瀏覽(23)
  • Android將Uri轉(zhuǎn)為路徑字符串(適配安卓全版本)并使用第三方應(yīng)用打開文件(適配Android7.0+)

    做這個(gè)功能時(shí)在網(wǎng)上找了無數(shù)篇例子,有些方法是有問題的,故自己寫一篇完整實(shí)現(xiàn)的總結(jié),作備忘也作案例。順便說一句,Android對(duì)存儲(chǔ)權(quán)限的給予真的越來越嚴(yán)格 目錄 1.Uri轉(zhuǎn)為路徑String以獲得文件名? 2.獲取文件后綴名 3.通過后綴名獲取文件MIME類型? 4.設(shè)置Intent的Uri與權(quán)限

    2024年02月19日
    瀏覽(24)
  • Android Pdf第三方框架

    導(dǎo)入AndroidPdfViewer 在 repositories 里面添加庫 布局文件引用PDFView PdfViewer 為我們提供了以下幾種讀取文件的方法: Configurator 主要方法 PDFView 其他方法 github地址: https://github.com/barteksc/AndroidPdfViewer 導(dǎo)入mupdf 在 repositories 里面添加庫 mupdf提供了解析代碼, Document 讀取pdf文件, Androi

    2024年02月13日
    瀏覽(98)
  • Android 解決第三方庫版本沖突

    在開發(fā)游戲SDK時(shí)會(huì)使用一些第三方庫,例如上文提到的 OkHttp ,或者集成某些第三方,而這些第三方使用的系統(tǒng)庫(例如 supportv7)和項(xiàng)目組使用的版本不一致,在編譯時(shí)就會(huì)出現(xiàn)版本沖突問題。解決辦法有兩個(gè): 盡量不使用第三庫,例如針對(duì) OkHttp ,如果沒有特殊的需求(比

    2023年04月27日
    瀏覽(89)
  • Android 項(xiàng)目調(diào)用第三方庫so動(dòng)態(tài)庫

    Android 項(xiàng)目調(diào)用第三方庫so動(dòng)態(tài)庫

    在Android NDK開發(fā)中,可以通過自己編寫C/C++代碼來構(gòu)建so動(dòng)態(tài)庫進(jìn)行調(diào)用之外,還可以把so動(dòng)態(tài)庫提供給第三方使用;接下來,我將介紹在新創(chuàng)建的Android 項(xiàng)目(或已存在的Android 項(xiàng)目)中如何調(diào)用第三方so動(dòng)態(tài)庫。 關(guān)于如何進(jìn)行NDK開發(fā),實(shí)現(xiàn)JNI,以及編寫C++與Java交互(Java調(diào)用

    2024年02月16日
    瀏覽(30)
  • Android常用的第三方庫--.jar、.aar

    Android常用的第三方庫--.jar、.aar

    JAR(Java Archive,Java 歸檔文件)是與平臺(tái)無關(guān)的文件格式,它允許將許多文件組合成一個(gè)壓縮文 件。JAR是 Java 的一種文檔格式,是一種與平臺(tái)無關(guān)的文件格式,可將多個(gè)文件合成一個(gè)文件。只包含了class文件與清單文件 , 不包含資源文件,如圖片等所有res中的文件 。 JAR的優(yōu)

    2024年02月03日
    瀏覽(32)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包