Mikasa Mikasa -4 years ago 787
Android Question

CS0117 C# 'Resource.Id' does not contain a definition for "PhoneNumberText"

I use Visual Studio 2015 with Xamarin.
I'm naming my project "Phoneword"
I see this code such as tutorial/example on Xamarin's site.

The same error for TranslateButton and CallButton members.

MainActivity.cs

using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;

namespace Phoneword
{
[Activity(Label = "Phoneword", MainLauncher = true)]
public class MainActivity : Activity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);

// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);

// Our code will go here
// Get our UI controls from the loaded layout:
EditText phoneNumberText = (EditText)FindViewById(Resource.Id.PhoneNumberText);
Button translateButton = FindViewById<Button>(Resource.Id.TranslateButton);
Button callButton = FindViewById<Button>(Resource.Id.CallButton);

// Disable the "Call" button
callButton.Enabled = false;

// Add code to translate number
string translatedNumber = string.Empty;

translateButton.Click += (object sender, EventArgs e) =>
{
// Translate user's alphanumeric phone number to numeric
translatedNumber = Core.PhonewordTranslator.ToNumber(phoneNumberText.Text);
if (String.IsNullOrWhiteSpace(translatedNumber))
{
callButton.Text = "Call";
callButton.Enabled = false;
}
else
{
callButton.Text = "Call " + translatedNumber;
callButton.Enabled = true;
}
};

callButton.Click += (object sender, EventArgs e) =>
{
// On "Call" button click, try to dial phone number.
var callDialog = new AlertDialog.Builder(this);
callDialog.SetMessage("Call " + translatedNumber + "?");
callDialog.SetNeutralButton("Call", delegate {
// Create intent to dial phone
var callIntent = new Intent(Intent.ActionCall);
callIntent.SetData(Android.Net.Uri.Parse("tel:" + translatedNumber));
StartActivity(callIntent);
});
callDialog.SetNegativeButton("Cancel", delegate { });

// Show the alert dialog to the user and wait for response.
callDialog.Show();
};
}

}
}


Resource/Layout/Main.axml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:text="Enter a Phoneword"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView1" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/PhoneNumberText"
android:text="1-855-XAMARIN" />
<Button
android:text="Translate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/TranslateButton" />
<Button
android:text="Call"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/CallButton" />
</LinearLayout>


I'm beginner in Android development, if you need other information i'll try to add more detail.
Please help me

Answer Source

I solved my problem! From Tools/Android SDK Manager I uninstalled:

  • Android SDK Build-tools 24
  • Android N (API 24)

and I installed:

  • Android 6.0 (API 23)
  • Android SDK Build-tools 23.0.3
  • Android SDK Build-tools 23.0.2

After I closed VS and I restarted it... In the Solution Explorer I selected "Clean Solution" and after I selected "Rebuild Solution".

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download