首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在xamarin android中从图库中获取所选图片名称

在Xamarin Android中,可以通过以下步骤从图库中获取所选图片的名称:

  1. 添加权限:在AndroidManifest.xml文件中,确保已添加读取外部存储的权限。可以在<manifest>标签内添加以下代码:
代码语言:txt
复制
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  1. 创建Intent:使用以下代码创建一个Intent对象,用于打开图库:
代码语言:txt
复制
Intent intent = new Intent(Intent.ActionPick, Android.Provider.MediaStore.Images.Media.ExternalContentUri);
  1. 设置类型:使用以下代码设置Intent的类型为image/*,以确保只显示图像文件:
代码语言:txt
复制
intent.SetType("image/*");
  1. 启动活动:使用以下代码启动图库活动,并等待结果返回:
代码语言:txt
复制
StartActivityForResult(intent, 1);
  1. 处理结果:在Activity的OnActivityResult方法中,可以获取所选图片的URI,并从中提取文件名:
代码语言:txt
复制
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
    base.OnActivityResult(requestCode, resultCode, data);

    if (requestCode == 1 && resultCode == Result.Ok && data != null)
    {
        Android.Net.Uri selectedImageUri = data.Data;
        string imageName = GetImageNameFromUri(selectedImageUri);
        // 处理所选图片的名称
    }
}

private string GetImageNameFromUri(Android.Net.Uri uri)
{
    string[] projection = { Android.Provider.MediaStore.Images.ImageColumns.DisplayName };
    var cursor = ContentResolver.Query(uri, projection, null, null, null);
    if (cursor != null && cursor.MoveToFirst())
    {
        int columnIndex = cursor.GetColumnIndexOrThrow(Android.Provider.MediaStore.Images.ImageColumns.DisplayName);
        string imageName = cursor.GetString(columnIndex);
        cursor.Close();
        return imageName;
    }
    return null;
}

以上步骤中,通过创建Intent并设置类型为image/*,然后启动图库活动并获取返回的URI,最后通过查询媒体库获取所选图片的名称。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):提供高可靠、低成本的云端存储服务,适用于图片、视频、音频等多媒体文件的存储和管理。详情请参考:腾讯云对象存储(COS)
  • 腾讯云移动推送(TPNS):为移动应用提供消息推送服务,可用于向用户发送通知、提醒等消息。详情请参考:腾讯云移动推送(TPNS)
  • 腾讯云人工智能(AI):提供丰富的人工智能服务,包括图像识别、语音识别、自然语言处理等,可用于开发智能应用。详情请参考:腾讯云人工智能(AI)
  • 腾讯云区块链服务(BCS):提供一站式区块链解决方案,可用于构建可信、高效的区块链应用。详情请参考:腾讯云区块链服务(BCS)
  • 腾讯云云原生应用引擎(TKE):提供容器化的应用部署和管理服务,支持快速构建、部署和运行云原生应用。详情请参考:腾讯云云原生应用引擎(TKE)
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C# Xamarin移动开发基础进修篇

二、概念名称含义解释 2.1、Mono介绍 Mono是一个由Xamarin公司(先前是Novell,最早为Ximian)所主持的自由开放源代码项目。...由于微软2016年2月正式收购了Xamarin,并将Xamarin内置到了VS2015 Update2Xamarin被微软收购后,2016年5月开始,Xamarin for VS已经变为全部免费并开源了...同时也是Google于2007年11月5日Android logo相关图片(36张) 宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。...参考文章: 最新Android系统版本与API等级对应关系表 Android各个版本的名称和更新 ? SKD版本 ?...,获取网络信息状态,当前的网络连接是否有效 获取WiFi状态android.permission.ACCESS_WIFI_STATE,获取当前WiFi接入的状态以及WLAN热点的信息 写入外部存储

6K20

是时候开始用C#快速开发移动应用了

2015年接触Xamarin到至今已经2个年头,我对Xamarin的技能没有长进多少,但它却已经足够成熟到在跨平台移动开发工具占有一席之地。...因为在整个UI层几乎是和原生Android开发一模一样,所以如果原来做过Android开发又懂C#,那用Xamarin来开发安卓程序几乎是没有什么学习成本 。...CollapsingToolbar Layout + NestedScrollView (图2的页面往下滚图片缩小直到消失的效果实现 ) Recycler View (ListView的加强版,适合数据量大的...我们主要看一下C#如何在ViewPager里面放视图同时与TabLayout关联起来。...Xamarin为我们提供了一种简单、高效的方式来开发强大的、原生般体验的APP。结合C#优雅的语法和宇宙最强大的IDE,这个事情也许值得一试。

2.5K60

Android编程实现保存图片到系统图库的方法示例

本文实例讲述了Android编程实现保存图片到系统图库的方法。分享给大家供大家参考,具体如下: 最近有些用户反映保存图片之后在系统图库找不到保存的图片,遂决定彻底查看并解决下。.../sdcard/Boohee/下,文件名以当前系统时间命名,但是这种方法保存的图片没有加入到系统图库 第二种是调用系统提供的插入图库的方法: 复制代码 代码如下: MediaStore.Images.Media.insertImage...(getContentResolver(), bitmap, “title”, “description”); 调用以上系统自带的方法会把bitmap对象保存到系统图库,但是这种方法无法指定保存的路径和名称...,上述方法的title、description参数只是插入数据库的字段,真实的图片名称系统会自动分配。...看似上述第二种方法就是我们要用到的方法,但是可惜的调用上述第二种插入图库的方法图片并没有立刻显示在图库,而我们需要立刻更新系统图库以便让用户可以立刻查看到这张图片

77331

张高兴的 Xamarin.Android 学习笔记:(二)“Hello World”

AssemblyInfo.cs 存放应用的编译信息,像名称,描述,版本等。 引用 与一般的 .Net 项目一样。...和 Android 项目下的 res 目录是一样的,drawable 下存放的是图片文件,layout 下是应用布局文件,value 下则是字符串。和 Assets 目录一样,也有一个简单的帮助文件。...Main.axml   双击 Main.axml 打开布局编辑器,你可以和正常的 .Net 项目一样工具箱拖拽控件,也可以使用类似Xaml的方式来编写布局。...,在 Xamarin 可以使用泛型方法 FindViewById() 来获取控件,需要传入一个 id 值。...// 获取布局的控件 Button say = FindViewById(Resource.Id.sayHello); TextView show = FindViewById<TextView

1.7K40

国内 Mono 相关文章汇总

Xamarin的客户,还包括一些知名的企业,美国国家仪器(National Instruments)和数字音乐订阅服务商Rdio等”。...(下) 如何让我们的PHP在Jexus跑起来 Linux+apache+mono+asp.net安装教程 mono for android 读取网络远程图片 mono for android 获取手机照片或拍照并裁剪保存...开发初体验 在Ubuntu搭建.NET开发环境 我正在使用Xamarin的跨平台框架—Xamarin.Android回忆录 Xamarin.Android快速入门 MONO x64 amd_x64 Xamarin.Android...多界面 Xamarin.Android活动的生命周期 Xamarin.Android获取与解析JSON APP并非一个人在战斗,还有API—Xamarin.Android回忆录 Xamarin.Android...通知详解 Xamarin.Android广播接收器与绑定服务 Xamarin.Android之ActionBar与菜单 绿色版的Linux.NET——“Jws.Mono”(续) 玫瑰一般的PHP

11.2K60

dotnet Multi-platform App UI 多平台应用 UI 框架简介

在 .NET 5 微软统一了整个 .NET 平台,将 .NET Core 和 Mono 以及基于 Mono 的 Xamarin 放在一起,于是就可以使用相同的一个 BCL 基础库和 SDK 工具链 当咱在考虑如何在...很多年以来,都有很多商业公司,这个链接 https://dotnet.microsoft.com/apps/xamarin/customers 列举出来的公司,都在使用 Xamarin 用 .NET...无论是使用哪个版本的 IDE Visual Studio 2019,Visual Studio for Mac甚至是 Visual Studio Code 工具,.NET MAUI 将在所有这些版本可用...开发人员可以依据以及的喜好选择适合的方式 Xamarin.Forms 过渡到 .NET MAUI 框架 毕竟这是微软改名部大法的行动,现在 Xamarin.Forms 开发人员可以使用使用他们已经了解和喜爱的所有相同控件和...,Xamarin.iOS和 Xamarin.Android 将作为.NET for iOS和.NET for Android成为.NET 6的一部分。

5.2K20

android之实现打开相册、拍照录像、播放视频、保存图片到系统相册指定位置、图片压缩

6.0以后对某些涉及用户隐私权限的获取需要动态获取,所以首先是检查权限,没有权限则动态申请权限,这里我们需要用到的权限是WRITE_EXTERNAL_STORAGE和CAMERA。...照片"+resultCode+data+requestCode); if (resultCode == Activity.RESULT_OK) { 方式一:自定义路径获取图片 img_show.setImageURI...—— 将Bitmap保存图片到指定的路径/sdcard/Boohee/下,文件名以当前系统时间命名,但是这种方法保存的图片没有加入到系统图库 public static File saveImage(...——- 调用以上系统自带的方法会把bitmap对象保存到系统图库, 但是这种方法无法指定保存的路径和名称, 上述方法的title、description参数只是插入数据库的字段, 真实的图片名称系统会自动分配...插入图库的方法图片并没有立刻显示在图库,而我们需要立刻更新系统图库以便让用户可以立刻查看到这张图片

5.2K20

10款实用Android UI 开发框架

但如果开发者想在3.0以下的版本也能使用到这套API,那么Nine Old Androids就会是你最好的选择,该API和Honeycomb API完全一样,只是改变了你使用com.nineoldandroids.XXX...Android-Universal-Image-Loader能为开发者提供多线程图片加载,灵活更改ImageLoader的基本配置(最大线程数、缓存方式、图片显示等);图片异步加载缓(内存缓存及本地缓存...ColorPicker ColorPicker是Android平台的颜色拾取器, 可以通过手机摄像头获取图像,或本地图库获取图像,然后点击所感兴趣的颜色,就可以知道所选颜色的RGB、HEX、HSV值...PhotoView PhotoView是对Android ImageView的拓展,支持通过单点/多点触摸来进行图片缩放的智能控件。 ?...Smart Image View SmartImageView是用来取代Android自带ImgageView组件,通过SmartImageView,使用者可以使用URL、电话薄等多种方式来加载图片,另外

2.6K70

C#使用Xamarin开发可移植移动应用进阶篇(8.打包生成安卓APK并精简大小),附源码

在Application Icon选项,我们可以任意选择一个已有的图片资源文件,并设置为应用程序的图标....就完成了 - - 是不是很简单.. 2.设置应用程序版本和名称 VS2017里面已经翻译的比较完善了,我就不多解释了..直接如下图: ?...(默认为无) Xamarin.Android的链接器采用静态分析来确定Xamarin.Android应用程序使用或引用了哪些程序集,类型和类型成员。...ProGuard不是Xamarin.Android连接器的替代品。Xamarin.Android链接器链接托管代码,而ProGuard链接Java字节码。...生成过程是首先使用Xamarin.Android链接器来优化应用程序的托管(C#)代码,然后使用ProGuard(如果启用)在Java字节码级别优化APK。

2.9K80

Android图片或拍照选择图片功能实例代码

前言 一般公司都有更换用户头像功能,需要从图库中选择图片或者拍照,基本还会对图片进行裁剪。最近抽空就做了一些简单的封装,方便以后使用。主要是用了建造者模式,链式调用,方便简单。.../监听回调结果 .setType(ChooseImageTask.TYPE_GALLERY)//类型 .perform(); 相册图片 /** * 系统图库里面选择 *...图库图片 /** * 图片类型文件中选择图片 * * @param activity */ private void takeImageFromAlbum(Activity activity...在res文件夹下创建xml文件夹,xml文件夹下面再创建拍照图片的存放路径,名称可以随便起,但是要记得取的时候要一致。...(String path) { int degree = 0; try { // 指定路径下读取图片,并获取其EXIF信息 ExifInterface exifInterface

99520

Flutter 旋转轮

**onChanged:**此 属性用于在每次更改选择时微调器菜单返回所选值的回调。 「select」:此 属性用于选择(突出显示)圆的扇区。范围是0(项目大小)。想象它就像一个数组。...=true android.useAndroidX=true android.enableJetifier=true 在libs目录下创建 「spinwheel_demo.dart」 文件,我们将创建一个由名称给定的字符串的两个列表...我们将创建由名称选择给出的动态列表的列表。同样,我们将创建一个由名称select给定的整数。...autoPlay」表示设置为true进行自动播放,「hideOthers」表示确定是否应绘制快门以隐藏除选定」项「以外的所有选项,应当绘制边框」指令**确定是否应绘制边框,「onChanged」表示每次更改选择时微调器菜单返回所选值的回调...当我们运行应用程序时,我们应该获得屏幕的输出,屏幕下方的截图所示。

8.7K20

自己开发一个 vsts agent 的 task

Visual Studio 或者其它任何开发工具也可以 2.下载并安装最新版本 nodejs(https://nodejs.org),如果是直接安装的 vs 这些应该直接都有了 3.建立自己的项目文件夹,...d:\code\home 4.通过 npm 安装编译工具 tfx-cli  npm i -g tfx-cli 5.在自己的项目文件夹建立一个 vss-extension.json 文件,这个文件说明了当前扩展包的信息..." } } ] } 6.以上面扩展信息中所示,扩展包包含了一个叫 extract-xamarin-android-manifest(我的任务) 的插件,...(任务的对应脚本,是在task.json配置的此名称)   - icon.png (任务的图标)   - task.json (任务的配置文件) 其中 task.json 是最主要的文件,我当前的这个扩展是读取...",//任务名称 "friendlyName": "extract xamarin android info",//友好任务名 "description": "extract xamarin android

81210

Xamarin 技术全解析

文件,基本的类名称都是一致的。...- 点击下一步,输入App 名称, 例如:FirstXamarinAndroid,一路点击下一步,工程创建完成。 下面是生成的Android工程结构截图: ?...如果有Eclipse进行Android编程经验的话会发现,这个Xamarin Android工程的项目结构与Eclipse的结构很类似,都包含了默认的MainActivity以及布局文件,基本的类名称都是一致的...Android Callable Wrappers(ACW) 使用C#开发的Android应用程序在运行的时候,C#代码是在Mono虚拟机执行的,而Mono虚拟机是寄宿在Dalvik虚拟机运行的,所有的...3.3 Xamarin.Forms实现原理 在Xamarin Studio构建Xamarin.Forms跨平台的应用的时候,会生成Android以及iOS单独的项目工程,两者共享业务逻辑以及一些UI界面

5.9K70

Xamarin.Forms入门-使用 Xamarin.Forms 来创建跨平台的用户界面

的项目 · 如何使用Xamarin.Forms的控件 · 如何在页面之间进行导航 · 如何进行数据绑定 系统需求 iOS : 由于Apple限制iOS应用程式编译都需要透过Xcode, 因此需要1台MAC...其系统需求如下: · Windows 7 或更新的作业系统版本 · Java SDK · Android SDK · Xamarin.Android for Visual Studio 使用Xamarin...使用 Xamarin.Forms Page Android 创建一个Activity类型,并且使用 MainLauncher 特性修饰,在 OnCreate 方法,初始化Xamarin.Forms框架...页面导航可以理解为一个后进先出的堆栈结构,展现一个页面相当于在堆栈添加一个元素,如果需要回到前一个页面,就需要把当前的页面堆栈删除。...是什么,以及如何使用 Xamarin.Forms 来构建跨平台的应用,我们如何安装 Xamarin.Forms,到如何创建一个 Xamarin.Forms 项目,如何构建用户界面,如何进行数据绑定以及如何切换页面

12.9K70

MAUI 移植 Xamarin.Forms 自定义渲染器

尽管MAUI中使用了新的渲染模式, 但是仍然Xamarin的支持Render渲染器, 这意味着如果你的项目是Xamarin移植到MAUI当中, 大部分代码能够可以重用, 本篇文章介绍如何将Xamarin...} } } } 第二步:在类库项目App2添加MyButton类,继承Button, 如下所示: using Xamarin.Forms; namespace...第二步: 然后, 我们把Xamarin创建的MyButton与MyButtonRender直接复制到MAUI的项目中, 如下所示: MyButtonRender类修改如下: using App2;...} } 说明: 此处更新涉及更新命名空间引用 移除旧的Xamarin引用: using Xamarin.Forms.Platform.Android; using Xamarin.Forms; 添加新的...下一篇, 主要给大家介绍, 如何在MAUI当中使用新的Handler体系来实现自定义平台控件。

2.5K20

.NET 8 Android 资源生成的改进和变化

SetContentView (2131492864); 作为 aapt2 构建过程的一部分,将生成文件 R.txt,其中包含资源的“string”名称到 Id 的映射。...为了 C# 访问此数据,我们需要一种在代码公开这些数据的方法。这是由项目 $(RootNamespace) 的 Resource 类处理的。我们 R.txt 获取值并将它们公开在这个类。...它包含一个 Resource 类派生的类。它将存在于项目的 $(RootNamespace) 。这是使现有代码能够正常工作的纽带 。因为Resource类的命名空间不会改变。...如果您需要支持这两个系统,您可以使用Xamarin.Legacy.Sdk来同时支持 Xamarin.Android 和 net8.0-android。...而是在构建时会生成一个 .aar 文件,其中包含这些数据,并命名为与程序集相同的名称。为了正常工作,需要将.aar 文件与程序集一起发送到 NuGet

20310
领券