29 Mart 2013 Cuma

IPhone uygulaması 3.5 ve 4 inch farkı

IPhone uygulamaları geliştirirken işinize yarayacak ufak bir kod parçası.

Uygulamanın kullanıldığı cihazın boyutlarına göre farklı işlemler gerçekleştirebilirsiniz. Örneğin uygulamada göstermek istediğiniz reklamı IPhone 5'de(4 inch) farklı IPhone 4'de (3.5 inch) farklı bir konumda olmasını isteyebilirsiniz.

Eğer uygulamanın çalıştığı cihaz IPhone 5 ise bu metod true değeri dönecektir, değilse sonuç false olacaktır.


- (BOOL)hasFourInchDisplay {
    return ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone && [UIScreen mainScreen].bounds.size.height == 568.0);
}




CKEditor'e html içerik ekleme



Merhaba arkadaşlar bu yazı veritabanından almış olduğunuz html içeriği tırnak işaretleri, boşluklar, html etiketleri vs. gibi javascript hatalarına sebep olabilecek şeyler kurtararak ckeditor'e nasıl ekleneceğini gösteren bir örnektir.
Ben bir Asp.NET MVC uygulamasında bu örneği kullanmıştım. Tabi ufak bir iki değişiklikle normal asp.net projelerinde de kullanabilirsiniz.

** Öncelikle Controller'da veritabanından html içeriği getirecek metodu tanımlıyoruz. Bu görüldüğü gibi geri dönüş değeri olarak Json nesnesi dönüyor.

public ActionResult GetPageContent(PageViewModel pageViewModel)
{
      pageViewModel.PageDTO = PageBusiness.GetByGUID(pageViewModel.PageDTO.GUID);
      return Json(new { content = pageViewModel.PageContentAsText });
}

** JQuery ajax ile de bu metodu çağırıp dönen sonucu ckeditor'e ekliyoruz. 

function SetCKEditorContent(pageGUID)
{
      data = {};
      data["PageDTO.GUID"] = pageGUID;
      $.ajax({
              url: '@Url.Action("GetPageContent")',
              type: "POST",
              processData: true,
              data: data,
              dataType: "json",
              async: true,
              success: function (data) {
                    editor.setData(data.content, function () { this.checkDirty(); });  
                    // Ajax sonucunda gelen data nesnesindeki değeri CKEditor'e atama işlemi.
                }
            });
}

Not: CKEditor için editor nesnesini nasıl oluşturduğumu görmek için ckeditor ile ilgili bir önceki yazımı inceleyebilirsiniz;
http://turkceyazilim.blogspot.com/2013/03/ckeditorde-imlecin-oldugu-yere-yeni-bir.html

14 Mart 2013 Perşembe

CKEditor'de imlecin olduğu yere yeni bir metin eklemek

CKeditor'de kullanıcının seçtiği noktaya yeni bir metin/içerik eklemek istiyorsanız aşağıda kullandığım örneği uygulayabilirsiniz; (Örneğin ben "facebook comments" eklentisi için kullanmıştım)

Öncelikle ckeditor'ün oluşturulma aşamasında editor değişkeni ile ckeditör'ü ilişkilendiriyoruz. 


var editor;
CKEDITOR.on('instanceReady', function (ev) {
    editor = ev.editor;
});


Sonrasında ckeditor'e yeni bir metin eklemek için böyle bir metot kullanabilirsiniz. Tabi farklı içerikler için kullacaksanız geliştirip "icerik"i metoda parametre olarak da alabilirsiniz.

function YeniIcerikEkle()
{
  var icerik = '<div> ckeditor'e içerik ekleme örneği </div>';
  var yeniAlan = CKEDITOR.dom.element.createFromHtml(icerik, editor.document);
  editor.insertElement(yeniAlan);
}