我是Xamarin Android的新手。我已经从AppCompatv7
选项中安装了GetComponents
支持库。
但每当我尝试用它做任何事情时,我都没有智能感知,就像它实际上没有添加到项目中一样。如下所示:
当我更多地了解装配时,它会出现如下选项,说它可能没有安装。但正如您从图片中看到的那样,它安装在我的参考资料下。
如果我点击下图中的Add Package
,则不会发生任何事情。
当我编译代码时,它无法在ActionBarActivity
基类中找到函数,因此我猜测它并没有将它正确地添加到我的项目中。
任何人都知道为什么会这样吗?干杯
答案 0 :(得分:1)
当我编译代码时,它无法在ActionBarActivity基类中找到函数,因此我猜测它没有将它正确地添加到我的项目中。
ActionBarActivity
已过时。
要使用Android.Support.V7.Widget.Toolbar
,在安装Xamarin.Android.Support.v7.AppCompat软件包后,您只需从MainActivity
而不是AppCompatActivity
继承ActionBarActivity
。
然后例如我的工具栏是这样的:
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:layout_width="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/toolbartitile"
android:text="Kodej" />
</android.support.v7.widget.Toolbar>
将此工具栏包含在Main
布局中,如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<include android:id="@+id/toolbar"
layout="@layout/mytoolbar" />
</LinearLayout>
最后在你的MainActivity
:
public class MainActivity : AppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
// Set our view from the "main" layout resource
SetContentView(Resource.Layout.Main);
var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
SetSupportActionBar(toolbar);
}
}
您只需在代码中引用Android.Support.V7.App
:
using Android.Support.V7.App;
我演示中的所有参考文献:
如果您已正确安装了lib并且没有智能感知,则可以尝试重建应用程序,关闭并重新打开VS.
答案 1 :(得分:0)
使用NuGet命令控制台安装它:
Install-Package Xamarin.Android.Support.v7.AppCompat -Pre