Skip to content

Commit 7a8d2b1

Browse files
committed
Initial commit
1 parent 7777b7e commit 7a8d2b1

29 files changed

+957
-0
lines changed

.gitignore

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Autosave files
2+
*~
3+
4+
# build
5+
[Oo]bj/
6+
[Bb]in/
7+
packages/
8+
TestResults/
9+
10+
# globs
11+
Makefile.in
12+
*.DS_Store
13+
*.sln.cache
14+
*.suo
15+
*.cache
16+
*.pidb
17+
*.userprefs
18+
*.usertasks
19+
config.log
20+
config.make
21+
config.status
22+
aclocal.m4
23+
install-sh
24+
autom4te.cache/
25+
*.user
26+
*.tar.gz
27+
tarballs/
28+
test-results/
29+
Thumbs.db
30+
.vs/
31+
32+
# Mac bundle stuff
33+
*.dmg
34+
*.app
35+
36+
# resharper
37+
*_Resharper.*
38+
*.Resharper
39+
40+
# dotCover
41+
*.dotCover

Droid/Assets/AboutAssets.txt

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Any raw assets you want to be deployed with your application can be placed in
2+
this directory (and child directories) and given a Build Action of "AndroidAsset".
3+
4+
These files will be deployed with your package and will be accessible using Android's
5+
AssetManager, like this:
6+
7+
public class ReadAsset : Activity
8+
{
9+
protected override void OnCreate (Bundle bundle)
10+
{
11+
base.OnCreate (bundle);
12+
13+
InputStream input = Assets.Open ("my_asset.txt");
14+
}
15+
}
16+
17+
Additionally, some Android functions will automatically load asset files:
18+
19+
Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");

Droid/Elmish.Calculator.Droid.fsproj

+168
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,168 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="..\packages\Xamarin.Forms.2.5.0.121934\build\netstandard1.0\Xamarin.Forms.props" Condition="Exists('..\packages\Xamarin.Forms.2.5.0.121934\build\netstandard1.0\Xamarin.Forms.props')" />
4+
<PropertyGroup>
5+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
6+
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
7+
<ProjectGuid>{07695494-A2BE-498D-90B5-42638BF241D5}</ProjectGuid>
8+
<ProjectTypeGuids>{EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{F2A71F9B-5D33-465A-A702-920D77279786}</ProjectTypeGuids>
9+
<UseStandardResourceNames>true</UseStandardResourceNames>
10+
<OutputType>Library</OutputType>
11+
<RootNamespace>Elmish.Calculator.Droid</RootNamespace>
12+
<AssemblyName>Elmish.Calculator.Droid</AssemblyName>
13+
<TargetFrameworkVersion>v8.1</TargetFrameworkVersion>
14+
<AndroidApplication>True</AndroidApplication>
15+
<AndroidResgenFile>Resources\Resource.designer.cs</AndroidResgenFile>
16+
<AndroidResgenClass>Resource</AndroidResgenClass>
17+
<AndroidManifest>Properties\AndroidManifest.xml</AndroidManifest>
18+
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
19+
<MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
20+
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
21+
</PropertyGroup>
22+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
23+
<DebugSymbols>true</DebugSymbols>
24+
<Optimize>false</Optimize>
25+
<OutputPath>bin\Debug</OutputPath>
26+
<DefineConstants>DEBUG</DefineConstants>
27+
<ErrorReport>prompt</ErrorReport>
28+
<AndroidLinkMode>None</AndroidLinkMode>
29+
<PlatformTarget></PlatformTarget>
30+
</PropertyGroup>
31+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
32+
<DebugSymbols>true</DebugSymbols>
33+
<Optimize>true</Optimize>
34+
<OutputPath>bin\Release</OutputPath>
35+
<DefineConstants></DefineConstants>
36+
<ErrorReport>prompt</ErrorReport>
37+
<AndroidManagedSymbols>true</AndroidManagedSymbols>
38+
<AndroidUseSharedRuntime>false</AndroidUseSharedRuntime>
39+
<GenerateTailCalls>true</GenerateTailCalls>
40+
<PlatformTarget></PlatformTarget>
41+
</PropertyGroup>
42+
<ItemGroup>
43+
<Reference Include="System" />
44+
<Reference Include="System.Xml" />
45+
<Reference Include="System.Core" />
46+
<Reference Include="System.Numerics" />
47+
<Reference Include="mscorlib" />
48+
<Reference Include="Mono.Android" />
49+
<Reference Include="FSharp.Core">
50+
<HintPath>..\packages\FSharp.Core.4.3.3\lib\netstandard1.6\FSharp.Core.dll</HintPath>
51+
</Reference>
52+
<Reference Include="Xamarin.Android.Support.Annotations">
53+
<HintPath>..\packages\Xamarin.Android.Support.Annotations.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Annotations.dll</HintPath>
54+
</Reference>
55+
<Reference Include="Xamarin.Android.Arch.Core.Common">
56+
<HintPath>..\packages\Xamarin.Android.Arch.Core.Common.1.0.0\lib\MonoAndroid80\Xamarin.Android.Arch.Core.Common.dll</HintPath>
57+
</Reference>
58+
<Reference Include="Xamarin.Android.Arch.Lifecycle.Common">
59+
<HintPath>..\packages\Xamarin.Android.Arch.Lifecycle.Common.1.0.3\lib\MonoAndroid80\Xamarin.Android.Arch.Lifecycle.Common.dll</HintPath>
60+
</Reference>
61+
<Reference Include="Xamarin.Android.Arch.Lifecycle.Runtime">
62+
<HintPath>..\packages\Xamarin.Android.Arch.Lifecycle.Runtime.1.0.3\lib\MonoAndroid80\Xamarin.Android.Arch.Lifecycle.Runtime.dll</HintPath>
63+
</Reference>
64+
<Reference Include="Xamarin.Android.Support.Compat">
65+
<HintPath>..\packages\Xamarin.Android.Support.Compat.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Compat.dll</HintPath>
66+
</Reference>
67+
<Reference Include="Xamarin.Android.Support.Core.UI">
68+
<HintPath>..\packages\Xamarin.Android.Support.Core.UI.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Core.UI.dll</HintPath>
69+
</Reference>
70+
<Reference Include="Xamarin.Android.Support.Core.Utils">
71+
<HintPath>..\packages\Xamarin.Android.Support.Core.Utils.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Core.Utils.dll</HintPath>
72+
</Reference>
73+
<Reference Include="Xamarin.Android.Support.Fragment">
74+
<HintPath>..\packages\Xamarin.Android.Support.Fragment.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Fragment.dll</HintPath>
75+
</Reference>
76+
<Reference Include="Xamarin.Android.Support.Media.Compat">
77+
<HintPath>..\packages\Xamarin.Android.Support.Media.Compat.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Media.Compat.dll</HintPath>
78+
</Reference>
79+
<Reference Include="Xamarin.Android.Support.v4">
80+
<HintPath>..\packages\Xamarin.Android.Support.v4.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.v4.dll</HintPath>
81+
</Reference>
82+
<Reference Include="Xamarin.Android.Support.Transition">
83+
<HintPath>..\packages\Xamarin.Android.Support.Transition.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Transition.dll</HintPath>
84+
</Reference>
85+
<Reference Include="Xamarin.Android.Support.v7.CardView">
86+
<HintPath>..\packages\Xamarin.Android.Support.v7.CardView.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.v7.CardView.dll</HintPath>
87+
</Reference>
88+
<Reference Include="Xamarin.Android.Support.v7.Palette">
89+
<HintPath>..\packages\Xamarin.Android.Support.v7.Palette.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.v7.Palette.dll</HintPath>
90+
</Reference>
91+
<Reference Include="Xamarin.Android.Support.v7.RecyclerView">
92+
<HintPath>..\packages\Xamarin.Android.Support.v7.RecyclerView.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.v7.RecyclerView.dll</HintPath>
93+
</Reference>
94+
<Reference Include="Xamarin.Android.Support.Vector.Drawable">
95+
<HintPath>..\packages\Xamarin.Android.Support.Vector.Drawable.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Vector.Drawable.dll</HintPath>
96+
</Reference>
97+
<Reference Include="Xamarin.Android.Support.Animated.Vector.Drawable">
98+
<HintPath>..\packages\Xamarin.Android.Support.Animated.Vector.Drawable.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Animated.Vector.Drawable.dll</HintPath>
99+
</Reference>
100+
<Reference Include="Xamarin.Android.Support.v7.AppCompat">
101+
<HintPath>..\packages\Xamarin.Android.Support.v7.AppCompat.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.v7.AppCompat.dll</HintPath>
102+
</Reference>
103+
<Reference Include="Xamarin.Android.Support.Design">
104+
<HintPath>..\packages\Xamarin.Android.Support.Design.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.Design.dll</HintPath>
105+
</Reference>
106+
<Reference Include="Xamarin.Android.Support.v7.MediaRouter">
107+
<HintPath>..\packages\Xamarin.Android.Support.v7.MediaRouter.27.0.2\lib\MonoAndroid81\Xamarin.Android.Support.v7.MediaRouter.dll</HintPath>
108+
</Reference>
109+
<Reference Include="FormsViewGroup">
110+
<HintPath>..\packages\Xamarin.Forms.2.5.0.121934\lib\MonoAndroid10\FormsViewGroup.dll</HintPath>
111+
</Reference>
112+
<Reference Include="Xamarin.Forms.Core">
113+
<HintPath>..\packages\Xamarin.Forms.2.5.0.121934\lib\MonoAndroid10\Xamarin.Forms.Core.dll</HintPath>
114+
</Reference>
115+
<Reference Include="Xamarin.Forms.Platform.Android">
116+
<HintPath>..\packages\Xamarin.Forms.2.5.0.121934\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll</HintPath>
117+
</Reference>
118+
<Reference Include="Xamarin.Forms.Platform">
119+
<HintPath>..\packages\Xamarin.Forms.2.5.0.121934\lib\MonoAndroid10\Xamarin.Forms.Platform.dll</HintPath>
120+
</Reference>
121+
<Reference Include="Xamarin.Forms.Xaml">
122+
<HintPath>..\packages\Xamarin.Forms.2.5.0.121934\lib\MonoAndroid10\Xamarin.Forms.Xaml.dll</HintPath>
123+
</Reference>
124+
<Reference Include="Xamarin.Android.FSharp.ResourceProvider.Runtime">
125+
<HintPath>..\packages\Xamarin.Android.FSharp.ResourceProvider.1.0.0.22\lib\Xamarin.Android.FSharp.ResourceProvider.Runtime.dll</HintPath>
126+
</Reference>
127+
</ItemGroup>
128+
<ItemGroup>
129+
<Compile Include="MainActivity.fs" />
130+
<None Include="Resources\AboutResources.txt" />
131+
<AndroidResource Include="Resources\layout\Tabbar.axml" />
132+
<AndroidResource Include="Resources\layout\Toolbar.axml" />
133+
<AndroidResource Include="Resources\values\styles.xml" />
134+
<AndroidResource Include="Resources\drawable\icon.png" />
135+
<AndroidResource Include="Resources\drawable-hdpi\icon.png" />
136+
<AndroidResource Include="Resources\drawable-xhdpi\icon.png" />
137+
<AndroidResource Include="Resources\drawable-xxhdpi\icon.png" />
138+
<Compile Include="Properties\AssemblyInfo.fs" />
139+
<None Include="Properties\AndroidManifest.xml" />
140+
<None Include="Assets\AboutAssets.txt" />
141+
<ProjectReference Include="../Elmish.Calculator/Elmish.Calculator.fsproj">
142+
<Project>{E8C95A87-1E80-4B6C-8F27-8E3BFF517297}</Project>
143+
<Name>Elmish.Calculator</Name>
144+
</ProjectReference>
145+
<None Include="packages.config" />
146+
</ItemGroup>
147+
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.FSharp.targets" />
148+
<Import Project="..\packages\Xamarin.Android.Support.Annotations.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Annotations.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Annotations.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Annotations.targets')" />
149+
<Import Project="..\packages\Xamarin.Android.Arch.Core.Common.1.0.0\build\MonoAndroid80\Xamarin.Android.Arch.Core.Common.targets" Condition="Exists('..\packages\Xamarin.Android.Arch.Core.Common.1.0.0\build\MonoAndroid80\Xamarin.Android.Arch.Core.Common.targets')" />
150+
<Import Project="..\packages\Xamarin.Android.Arch.Lifecycle.Common.1.0.3\build\MonoAndroid80\Xamarin.Android.Arch.Lifecycle.Common.targets" Condition="Exists('..\packages\Xamarin.Android.Arch.Lifecycle.Common.1.0.3\build\MonoAndroid80\Xamarin.Android.Arch.Lifecycle.Common.targets')" />
151+
<Import Project="..\packages\Xamarin.Android.Arch.Lifecycle.Runtime.1.0.3\build\MonoAndroid80\Xamarin.Android.Arch.Lifecycle.Runtime.targets" Condition="Exists('..\packages\Xamarin.Android.Arch.Lifecycle.Runtime.1.0.3\build\MonoAndroid80\Xamarin.Android.Arch.Lifecycle.Runtime.targets')" />
152+
<Import Project="..\packages\Xamarin.Android.Support.Compat.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Compat.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Compat.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Compat.targets')" />
153+
<Import Project="..\packages\Xamarin.Android.Support.Core.UI.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Core.UI.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Core.UI.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Core.UI.targets')" />
154+
<Import Project="..\packages\Xamarin.Android.Support.Core.Utils.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Core.Utils.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Core.Utils.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Core.Utils.targets')" />
155+
<Import Project="..\packages\Xamarin.Android.Support.Fragment.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Fragment.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Fragment.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Fragment.targets')" />
156+
<Import Project="..\packages\Xamarin.Android.Support.Media.Compat.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Media.Compat.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Media.Compat.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Media.Compat.targets')" />
157+
<Import Project="..\packages\Xamarin.Android.Support.v4.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v4.targets" Condition="Exists('..\packages\Xamarin.Android.Support.v4.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v4.targets')" />
158+
<Import Project="..\packages\Xamarin.Android.Support.Transition.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Transition.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Transition.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Transition.targets')" />
159+
<Import Project="..\packages\Xamarin.Android.Support.v7.CardView.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.CardView.targets" Condition="Exists('..\packages\Xamarin.Android.Support.v7.CardView.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.CardView.targets')" />
160+
<Import Project="..\packages\Xamarin.Android.Support.v7.Palette.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.Palette.targets" Condition="Exists('..\packages\Xamarin.Android.Support.v7.Palette.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.Palette.targets')" />
161+
<Import Project="..\packages\Xamarin.Android.Support.v7.RecyclerView.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.RecyclerView.targets" Condition="Exists('..\packages\Xamarin.Android.Support.v7.RecyclerView.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.RecyclerView.targets')" />
162+
<Import Project="..\packages\Xamarin.Android.Support.Vector.Drawable.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Vector.Drawable.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Vector.Drawable.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Vector.Drawable.targets')" />
163+
<Import Project="..\packages\Xamarin.Android.Support.Animated.Vector.Drawable.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Animated.Vector.Drawable.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Animated.Vector.Drawable.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Animated.Vector.Drawable.targets')" />
164+
<Import Project="..\packages\Xamarin.Android.Support.v7.AppCompat.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.AppCompat.targets" Condition="Exists('..\packages\Xamarin.Android.Support.v7.AppCompat.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.AppCompat.targets')" />
165+
<Import Project="..\packages\Xamarin.Android.Support.Design.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Design.targets" Condition="Exists('..\packages\Xamarin.Android.Support.Design.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.Design.targets')" />
166+
<Import Project="..\packages\Xamarin.Android.Support.v7.MediaRouter.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.MediaRouter.targets" Condition="Exists('..\packages\Xamarin.Android.Support.v7.MediaRouter.27.0.2\build\MonoAndroid81\Xamarin.Android.Support.v7.MediaRouter.targets')" />
167+
<Import Project="..\packages\Xamarin.Forms.2.5.0.121934\build\netstandard1.0\Xamarin.Forms.targets" Condition="Exists('..\packages\Xamarin.Forms.2.5.0.121934\build\netstandard1.0\Xamarin.Forms.targets')" />
168+
</Project>

Droid/MainActivity.fs

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
namespace Elmish.Calculator.Droid
2+
open System
3+
4+
open Android.App
5+
open Android.Content
6+
open Android.Content.PM
7+
open Android.Runtime
8+
open Android.Views
9+
open Android.Widget
10+
open Android.OS
11+
open Xamarin.Forms.Platform.Android
12+
13+
type Resources = Elmish.Calculator.Droid.Resource
14+
15+
[<Activity (Label = "Elmish.Calculator.Droid", Icon = "@drawable/icon", Theme = "@style/MyTheme", MainLauncher = true, ConfigurationChanges = (ConfigChanges.ScreenSize ||| ConfigChanges.Orientation))>]
16+
type MainActivity() =
17+
inherit FormsAppCompatActivity()
18+
19+
override this.OnCreate (bundle: Bundle) =
20+
FormsAppCompatActivity.TabLayoutResource <- Resources.Layout.Tabbar
21+
FormsAppCompatActivity.ToolbarResource <- Resources.Layout.Toolbar
22+
23+
base.OnCreate (bundle)
24+
25+
Xamarin.Forms.Forms.Init (this, bundle)
26+
27+
this.LoadApplication (new Elmish.Calculator.App ())

Droid/Properties/AndroidManifest.xml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.Elmish_Calculator">
3+
<uses-sdk android:minSdkVersion="15" />
4+
<application android:label="Elmish.Calculator">
5+
</application>
6+
</manifest>

Droid/Properties/AssemblyInfo.fs

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
namespace Elmish.Calculator.Droid.Properties
2+
open System.Reflection
3+
open System.Runtime.CompilerServices
4+
5+
[<assembly: AssemblyTitle("Elmish.Calculator.Droid")>]
6+
[<assembly: AssemblyDescription("")>]
7+
[<assembly: AssemblyConfiguration("")>]
8+
[<assembly: AssemblyCompany("")>]
9+
[<assembly: AssemblyProduct("")>]
10+
[<assembly: AssemblyCopyright("${AuthorCopyright}")>]
11+
[<assembly: AssemblyTrademark("")>]
12+
13+
// The assembly version has the format {Major}.{Minor}.{Build}.{Revision}
14+
15+
[<assembly: AssemblyVersion("1.0.0.0")>]
16+
17+
//[<assembly: AssemblyDelaySign(false)>]
18+
//[<assembly: AssemblyKeyFile("")>]
19+
20+
()

Droid/Resources/AboutResources.txt

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
Images, layout descriptions, binary blobs and string dictionaries can be included
2+
in your application as resource files. Various Android APIs are designed to
3+
operate on the resource IDs instead of dealing with images, strings or binary blobs
4+
directly.
5+
6+
For example, a sample Android app that contains a user interface layout (main.axml),
7+
an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png)
8+
would keep its resources in the "Resources" directory of the application:
9+
10+
Resources/
11+
drawable/
12+
icon.png
13+
14+
layout/
15+
main.axml
16+
17+
values/
18+
strings.xml
19+
20+
In order to get the build system to recognize Android resources, set the build action to
21+
"AndroidResource". The native Android APIs do not operate directly with filenames, but
22+
instead operate on resource IDs. When you compile an Android application that uses resources,
23+
the build system will package the resources for distribution and generate a class called "R"
24+
(this is an Android convention) that contains the tokens for each one of the resources
25+
included. For example, for the above Resources layout, this is what the R class would expose:
26+
27+
public class R {
28+
public class drawable {
29+
public const int icon = 0x123;
30+
}
31+
32+
public class layout {
33+
public const int main = 0x456;
34+
}
35+
36+
public class strings {
37+
public const int first_string = 0xabc;
38+
public const int second_string = 0xbcd;
39+
}
40+
}
41+
42+
You would then use R.drawable.icon to reference the drawable/icon.png file, or R.layout.main
43+
to reference the layout/main.axml file, or R.strings.first_string to reference the first
44+
string in the dictionary file values/strings.xml.
1.4 KB
Loading
1.75 KB
Loading
2.3 KB
Loading

Droid/Resources/drawable/icon.png

1.4 KB
Loading

Droid/Resources/layout/Tabbar.axml

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<android.support.design.widget.TabLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/sliding_tabs" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:tabIndicatorColor="@android:color/white" app:tabGravity="fill" app:tabMode="fixed" />

0 commit comments

Comments
 (0)