Birincisi 32bit java kur güzel kardeşim.
İkincisi Visual Studio > Tools > Options > Xamarin kısmından JDK'nın yerini yeni kurduğun bu 32 bit'e göster.
Üçüncüsü de
Windows için c:\Users\KullanıcıAdın\AppData\Local\Xamarin\ klasöründeki
Mac için ~/.local/share/Xamarin/ klasöründeki
herşeyi sil ve Visual Studio'dan Clean All yap.
Umarım çalışır :)
28 Aralık 2016 Çarşamba
13 Aralık 2016 Salı
Xamarin.Forms Android Sorunları 3 - Her derlediğimde bir java class veya build sorunu alıyorum
Evet ve biliyorum çıldırmak üzeresin.
Öncelikle Mac'te
klasörüne git. Dosyaların hepsini sil. Sonra Visual Studio (Windows) veya Xamarin Studio'dan (Mac) Build > Clean All çek. Sonra da yeniden Rebuild All yap. Muhtemelen birşeyler düzelecektir.
Öncelikle Mac'te
klasörüne git. Dosyaların hepsini sil. Sonra Visual Studio (Windows) veya Xamarin Studio'dan (Mac) Build > Clean All çek. Sonra da yeniden Rebuild All yap. Muhtemelen birşeyler düzelecektir.
Xamarin.Forms Android Sorunları 2 - SDK ayarlarım bir türlü tutmuyor.
Götü düzeliyor başı oynuyor başı düzeliyor götü oynuyor...
O zaman sadece aşağıdaki resimdekileri kurarak dene.
Ayrıca bu paketlerin tamamını kurduktan sonra
Androrid projesi sağ tuş > Options > Android Application > Minimum Android Version ve Target Android version'ları birkez daha bırkalayıp Automatic'e al. Alet 24 api versiyonuna kendini ayarlayacak...
O zaman sadece aşağıdaki resimdekileri kurarak dene.
Ayrıca bu paketlerin tamamını kurduktan sonra
Androrid projesi sağ tuş > Options > Android Application > Minimum Android Version ve Target Android version'ları birkez daha bırkalayıp Automatic'e al. Alet 24 api versiyonuna kendini ayarlayacak...
Xamarin.Forms Android Sorunları 1 - Emulatör'üm çalışmayorrr
Eğer emulator açılmıyorsa güzel kardeşim, sil cihazı hatta tüm cihazları sil yeniden bir emulator kur
Adını orjinaline uysun diye "Android_Accelerated_x86" yap. Memory 1024 ver Heap istiyorsa ona da bonkör davran 256 mb ver. "Use GPU" de x86'lı birşeyler seç en yukardan da ve Google API ile kombine et. Tikir tikir...
Adını orjinaline uysun diye "Android_Accelerated_x86" yap. Memory 1024 ver Heap istiyorsa ona da bonkör davran 256 mb ver. "Use GPU" de x86'lı birşeyler seç en yukardan da ve Google API ile kombine et. Tikir tikir...
27 Kasım 2016 Pazar
SKSurface kullanımı
using (var surface = SKSurface.Create(200, 200, SKColorType.Rgba8888, SKAlphaType.Unpremul))
{
surface.Canvas.Clear(SKColors.White);
using (var paint = new SKPaint())
{
paint.IsAntialias = true;
paint.Color = new SKColor(0x2c, 0x3e, 0x50);
paint.StrokeCap = SKStrokeCap.Round;
// create the Xamagon path
using (var path = new SKPath())
{
path.MoveTo(71.4311121f, 56f);
path.CubicTo(68.6763107f, 56.0058575f, 65.9796704f, 57.5737917f, 64.5928855f, 59.965729f);
path.LineTo(43.0238921f, 97.5342563f);
path.CubicTo(41.6587026f, 99.9325978f, 41.6587026f, 103.067402f, 43.0238921f, 105.465744f);
path.LineTo(64.5928855f, 143.034271f);
path.CubicTo(65.9798162f, 145.426228f, 68.6763107f, 146.994582f, 71.4311121f, 147f);
path.LineTo(114.568946f, 147f);
path.CubicTo(117.323748f, 146.994143f, 120.020241f, 145.426228f, 121.407172f, 143.034271f);
path.LineTo(142.976161f, 105.465744f);
path.CubicTo(144.34135f, 103.067402f, 144.341209f, 99.9325978f, 142.976161f, 97.5342563f);
path.LineTo(121.407172f, 59.965729f);
path.CubicTo(120.020241f, 57.5737917f, 117.323748f, 56.0054182f, 114.568946f, 56f);
path.LineTo(71.4311121f, 56f);
path.Close();
// draw the Xamagon path
surface.Canvas.DrawPath(path, paint);
}
}
var data = surface.Snapshot().Encode(SKImageEncodeFormat.Png, 100);
myImage.Source = ImageSource.FromStream(() => data.AsStream()); //(FileImageSource)ImageSource.FromFile("navbar_notifications_light.png");
{
surface.Canvas.Clear(SKColors.White);
using (var paint = new SKPaint())
{
paint.IsAntialias = true;
paint.Color = new SKColor(0x2c, 0x3e, 0x50);
paint.StrokeCap = SKStrokeCap.Round;
// create the Xamagon path
using (var path = new SKPath())
{
path.MoveTo(71.4311121f, 56f);
path.CubicTo(68.6763107f, 56.0058575f, 65.9796704f, 57.5737917f, 64.5928855f, 59.965729f);
path.LineTo(43.0238921f, 97.5342563f);
path.CubicTo(41.6587026f, 99.9325978f, 41.6587026f, 103.067402f, 43.0238921f, 105.465744f);
path.LineTo(64.5928855f, 143.034271f);
path.CubicTo(65.9798162f, 145.426228f, 68.6763107f, 146.994582f, 71.4311121f, 147f);
path.LineTo(114.568946f, 147f);
path.CubicTo(117.323748f, 146.994143f, 120.020241f, 145.426228f, 121.407172f, 143.034271f);
path.LineTo(142.976161f, 105.465744f);
path.CubicTo(144.34135f, 103.067402f, 144.341209f, 99.9325978f, 142.976161f, 97.5342563f);
path.LineTo(121.407172f, 59.965729f);
path.CubicTo(120.020241f, 57.5737917f, 117.323748f, 56.0054182f, 114.568946f, 56f);
path.LineTo(71.4311121f, 56f);
path.Close();
// draw the Xamagon path
surface.Canvas.DrawPath(path, paint);
}
}
var data = surface.Snapshot().Encode(SKImageEncodeFormat.Png, 100);
myImage.Source = ImageSource.FromStream(() => data.AsStream()); //(FileImageSource)ImageSource.FromFile("navbar_notifications_light.png");
26 Kasım 2016 Cumartesi
"int, x:int, string, x:string not found in xmlns" hatası ve WidthRequest, HeightRequest
Evet eğer
"int not found in xmlns"
"x:int not found in xmlns"
"string not found in xmlns"
"x:string not found in xmlns"
hatalarından birini alıyorsanız.
string için
x:String deneyin
integer için
x:Int32 deneyin
eğer WidthRequest ve HeightRequest gibi bir property için deniyorsanız
hataya dikkatli bakın. Bu property'ler int değiller :) Double'lar :) o yüzden:
x:Double deneyin
Kolay gelsin.
"int not found in xmlns"
"x:int not found in xmlns"
"string not found in xmlns"
"x:string not found in xmlns"
hatalarından birini alıyorsanız.
string için
x:String deneyin
integer için
x:Int32 deneyin
eğer WidthRequest ve HeightRequest gibi bir property için deniyorsanız
hataya dikkatli bakın. Bu property'ler int değiller :) Double'lar :) o yüzden:
x:Double deneyin
Kolay gelsin.
25 Kasım 2016 Cuma
@integer/google_play_services_version') (APT0000) hatası
Xam.Plugin.PushNotification veya başka bir push notification alma eklentisini eklediniz. Sihirli bir şekilde APT0000 hatası alıyorsunuz. Tek yapmanız gereken Clean All çekmek. :D Başka hata çıkar o ayrı ama ilk eklemede clean çekene kadar bu hatayı veriyor.
2 Kasım 2016 Çarşamba
Aynı anda 2 Xamarin Studio açmak
Terminal'den
open -n "/Applications/Xamarin Studio.app"
arkadaşım Aram söyledi :)
open -n "/Applications/Xamarin Studio.app"
arkadaşım Aram söyledi :)
31 Ekim 2016 Pazartesi
iOS klavye için Kapat/Done düğmesi koymak
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;
[assembly: ExportRenderer(typeof(Entry), typeof(DoneEntryRenderer))]
namespace SuperFaiz.iOS
{
public class DoneEntryRenderer : EntryRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
{
base.OnElementChanged(e);
// Check for only Numeric keyboard
if (this.Element.Keyboard == Keyboard.Numeric)
{
this.AddDoneButton();
}
}
protected void AddDoneButton()
{
UIToolbar toolbar = new UIToolbar(new RectangleF(0.0f, 0.0f, 50.0f, 44.0f));
var doneButton = new UIBarButtonItem("Kapat", UIBarButtonItemStyle.Done, delegate
{
this.Control.ResignFirstResponder();
});
toolbar.Items = new UIBarButtonItem[] {
new UIBarButtonItem (UIBarButtonSystemItem.FlexibleSpace),
doneButton
};
this.Control.InputAccessoryView = toolbar;
}
}
}
Bu içeriği DoneEntryRenderer.cs dosyası oluşturup iOS projenizin ana klasörüne kaydedin.
Numeric klavyelerde Kapat düğmesi çıkmaya başlayacak :)
30 Ekim 2016 Pazar
MACOSX Xamarin'de Android projesi için APT0000 hatası (tabIndicatorColor, tabGravity, tabMode)
/users/yourUserName/.local/share dizinine gidilir.
Bu klasör altındaki herşey silinir.
Projeye Clean All çekilir.
Derleme daha uzun sürecektir.
Eğer işlem sonunda yine aynı hata alınırsa bir kez daha tüm bu işlemler tekrarlanır.
Garip ama çalışıyor...
Bu klasör altındaki herşey silinir.
Projeye Clean All çekilir.
Derleme daha uzun sürecektir.
Eğer işlem sonunda yine aynı hata alınırsa bir kez daha tüm bu işlemler tekrarlanır.
Garip ama çalışıyor...
9 Ekim 2016 Pazar
NavBar back button'ın metnini "Geri" yapmak
Göreceksiniz ki birçok yerden denemenize rağmen "Back" yazan geri düğmesinin metnini "Geri" yapamıyorsunuz. Bunun nedeni bu ifadeyi en başta RootPage içinde NavigationPage oluştururken yapmanız gerektiği.
Page page = new ContactsPage();
Page page = new ContactsPage();
NavigationPage navigationPage = new NavigationPage(page);
NavigationPage.SetBackButtonTitle(page, "Geri");
Dikkat etmeniz gereken şey NavigationPage class'ının statik komutunu çağırıyoruz ve ilk parametre olarak, navigationPage instance'ımızı değil, navigation'ın page'in içine rootPage olarak verdiğimiz page'i veriyoruz. (ContactsPage instance'ı)
XAML kullanarak NavBar'a sağ button yerleştirme.
Olayı kodla yapmak için bir sürü örnek bulabilirsiniz.
Ben xaml kullanarak yapmak istiyordum.
ContentPage v.b. ilk tag'ın açışından hemen sonra.
<ContentPage.ToolbarItems>
<ToolbarItem Icon="navbar_notifications_light.png" Name="Create" Clicked="OnButtonNotificationsClicked"></ToolbarItem>
</ContentPage.ToolbarItems>
private void OnButtonNotificationsClicked(object sender, System.EventArgs e)
{
Ben xaml kullanarak yapmak istiyordum.
ContentPage v.b. ilk tag'ın açışından hemen sonra.
<ContentPage.ToolbarItems>
<ToolbarItem Icon="navbar_notifications_light.png" Name="Create" Clicked="OnButtonNotificationsClicked"></ToolbarItem>
</ContentPage.ToolbarItems>
codebehind'da da "OnButtonNotificationsClicked" adında aşağıdaki gibi bir event handler hazırlarsanız düğmeye tıklanınca kolayca tetiklenir.
{
// kod...
}
Ne kodla düğme ekleme var ne event bağlama. Tertemiz mis gibi.
iOS StatusBar rengini beyaza çevirmek
iOS projesine gidilir.
info.plist dosyasına sağ tuş > XCode açılır.
En alttaki satırın üzerine gelince çıkan artı düğmesine tıklanır.
"Status Bar Style" eklenir ve değeri "Gray Style (Default)" yapılır.
En alttaki satırın üzerine gelince çıkan artı düğmesine tekrar tıklanır.
info.plist dosyasına sağ tuş > XCode açılır.
En alttaki satırın üzerine gelince çıkan artı düğmesine tıklanır.
"Status Bar Style" eklenir ve değeri "Gray Style (Default)" yapılır.
En alttaki satırın üzerine gelince çıkan artı düğmesine tekrar tıklanır.
"View controller-based status bar bla bla" seçilir ve değeri "NO" yapılır.
Budur...
24 Eylül 2016 Cumartesi
XAML içinde Label'a yeni satır verdirme
Tırmalayın uğraşın ama olmayacak. Bulabildiğim tek yol karakteri unicode olarak vermek. Kodla veriliyor ok onu biliyorum ama xaml varken ne gerek var kod kalabalığına.
<Label Text="Satır1
Satır2"></Label>
budur, basit ve kolay...
<Label Text="Satır1
Satır2"></Label>
budur, basit ve kolay...
Kaydol:
Kayıtlar (Atom)