using System.Text;
namespace PhonewordApp
{
public static class PhonewordTranslator
{
public static string Tonumber(string raw)
{
if (string.IsNullOrWhiteSpace(raw))
{
return "";
}
else
{
raw = raw.ToUpperInvariant();
}
var newNumber = new StringBuilder();
foreach (var c in raw)
{
if ("- 0123456789".Contains(c))
newNumber.Append(c);
else
{
var result = TranslateTonumber(c);
if (result != null)
newNumber.Append(result);
}
}
return newNumber.ToString();
}
static bool Contains(this string keyString, char c)
{
return keyString.IndexOf(c) >= 0;
}
static int? TranslateTonumber(char c)
{
if ("ABC".Contains(c))
return 2;
else if ("DEF".Contains(c))
return 3;
else if ("GHI".Contains(c))
return 4;
else if ("JKL".Contains(c))
return 5;
else if ("MNO".Contains(c))
return 6;
else if ("PQRS".Contains(c))
return 7;
else if ("TUV".Contains(c))
return 8;
else if ("WXYZ".Contains(c))
return 9;
return null;
}
}
}
(2)打开MainActivity.cs,将该文件改为下面的代码:
using System;
using Android.App;
using Android.Content;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using System.Collections.Generic;
namespace PhonewordApp
{
[Activity(Label = "PhonewordApp", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{
static readonly List phoneNumbers = new List();
protected override void onCreate(Bundle bundle)
{
base.onCreate(bundle);
SetContentView(Resource.Layout.Main);
var phoneNumberText = FindViewById(Resource.Id.PhoneNumberText);
var buttonTranslate = FindViewById